Single sensor wearable device for monitoring joint extension and flexion

ABSTRACT

A system for rehabilitation is disclosed. The system for rehabilitation includes a monitoring device comprising a memory device storing instructions and a network interface card, wherein the monitoring device is configured to detect information from a body part of a user. The system for rehabilitation further includes one or more processing devices operatively coupled to the monitoring device. The one or more processing devices are configured to execute the instructions to receive configuration information specified in a treatment plan for rehabilitating the body part of the user. The one or more processing devices are configured to execute the instructions for receiving the information from the monitoring device. The one or more processing devices are further configured to execute the instructions to transmit the configuration information and the information to a computing device controlling an electromechanical device, via the network interface card.

CROSS-REFERENCE TO RELATED APPLICATION(S)

This application claims priority to and the benefit of U.S. Provisional Application Patent Ser. No. 62/816,503, filed Mar. 11, 2019, the entire disclosure of which is hereby incorporated by reference.

TECHNICAL FIELD

This disclosure relates generally to electromechanical devices. More specifically, this disclosure relates to a control system for an electromechanical device for rehabilitation or exercise.

BACKGROUND

Various devices may be used by people for exercising and/or rehabilitating parts of their bodies. For example, as part of workout regimens to maintain a desired level of fitness, users may operate devices for a period of time or distance. In another example, a person may undergo knee surgery and a physician may provide a treatment plan for rehabilitation to strengthen and/or improve flexibility of the knee that includes periodically operating a rehabilitation device for a period of time and/or distance. The exercise and/or rehabilitation devices may include pedals on opposite sides. The devices may be operated by users engaging the pedals with their feet or their hands and rotating the pedals.

SUMMARY

In general, the present disclosure provides a control system for a rehabilitation or exercise device and associated components of the device.

In one aspect, a system for rehabilitation includes a monitoring device comprising a memory device storing instructions and a network interface card, wherein the monitoring device is configured to detect information from a body part of a user. The system for rehabilitation further includes one or more processing devices operatively coupled to the monitoring device. The one or more processing devices are configured to execute the instructions for receiving configuration information specified in a treatment plan for rehabilitating the body part of the user. The one or more processing devices are configured to execute the instructions to receive the information from the monitoring device. The one or more processing devices are further configured to execute the instructions to transmit the configuration information and the information to a computing device controlling an electromechanical device, via the network interface card.

In another aspect, a system for rehabilitation includes a monitoring device comprising a memory device storing instructions and a network interface card, wherein the monitoring device is configured to detect information from a body part of a user. The system for rehabilitation further includes one or more processing devices operatively coupled to the monitoring device. The one or more processing devices are configured to execute the instructions to receive configuration information specified in a treatment plan for rehabilitating the body part of the user. The one or more processing devices are configured to execute the instructions to receive the information from the monitoring device. The one or more processing devices are further configured to execute the instructions to transmit the configuration information and the information to a computing device controlling an electromechanical device, via the network interface card. The transmitting the information to the computing device causes the computing device to present the information in a graphical animation of the body part moving in real-time.

In yet another aspect, a system for rehabilitation further includes a monitoring device comprising a memory device storing instructions and a network interface card, wherein the monitoring device is configured to detect a range of motion of a body part of a user. The system for rehabilitation further includes an electromechanical device comprising one or more pedals coupled to one or more radially-adjustable couplings. The system for rehabilitation further includes an electric motor coupled to the one or more pedals via the one or more radially-adjustable couplings. The system for rehabilitation further includes a control system comprising one or more processing devices operatively coupled to both the monitoring device and the electric motor. The one or more processing devices are configured to receive configuration information for an exercise session, set a resistance parameter and a maximum pedal force parameter based on the configuration information for the exercise session, and receive the range of motion from the monitoring device. The one or more processing devices are further configured to transmit the configuration information and the range of motion to a computing device controlling the electromechanical device, via the network interface card. The one or more processing devices are further configured to measure force applied to pedals of the electromechanical device as a user pedals the electromechanical device, wherein, based on the resistance parameter, the electric motor provides resistance during the exercise session.

From the following figures, descriptions, and claims, other technical features may be readily apparent to one skilled in the art.

Before undertaking the DETAILED DESCRIPTION below, it may be advantageous to set forth definitions of certain words and phrases used throughout this patent document. The term “couple” and its derivatives refer to any direct or indirect communication between two or more elements, independent of whether those elements are in physical contact with one another. The terms “transmit,” “receive,” and “communicate,” as well as derivatives thereof, encompass both direct and indirect communication. The terms “include” and “comprise,” as well as derivatives thereof, mean inclusion without limitation. The term “or” is inclusive, meaning and/or. The phrase “associated with,” as well as derivatives thereof, means to include, be included within, interconnect with, contain, be contained within, connect to or with, couple to or with, be communicable with, cooperate with, interleave, juxtapose, be proximate to, be bound to or with, have, have a property of, have a relationship to or with, or the like. The term “controller” means any device, system or part thereof that controls at least one operation. Such a controller may be implemented in hardware or a combination of hardware and software and/or firmware. The functionality associated with any particular controller may be centralized or distributed, whether locally or remotely. The phrase “at least one of,” when used with a list of items, means that different combinations of one or more of the listed items may be used, and only one item in the list may be needed. For example, “at least one of: A, B, and C” includes any of the following combinations: A, B, C, A and B, A and C, B and C, and A and B and C.

Moreover, various functions described below can be implemented or supported by one or more computer programs, each of which is formed from computer readable program code and embodied in a computer readable medium. The terms “application” and “program” refer to one or more computer programs, software components, sets of instructions, procedures, functions, objects, classes, instances, related data, or portions thereof adapted for implementation in a suitable computer readable program code. The phrase “computer readable program code” includes any type of computer code, including source code, linked or linkable code, object code, and executable code. The phrase “computer readable medium” includes any type of medium capable of being accessed by a computer, such as read only memory (ROM), solid state device (SSD) memory, random access memory (RAM), a hard disk drive, a compact disc (CD), a digital video disc (DVD), or any other type of memory. A “non-transitory” computer readable medium excludes wired, wireless, optical, or other communication links that transport transitory electrical or other signals. A non-transitory computer readable medium includes media where data can be permanently stored and media where data can be stored and later overwritten, such as a rewritable optical disc or an erasable memory device.

Definitions for other certain words and phrases are provided throughout this patent document. Those of ordinary skill in the art should understand that in many if not most instances, such definitions apply to prior as well as to future uses of such defined words and phrases.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of this disclosure and its advantages, reference is now made to the following description, taken in conjunction with the accompanying drawings, in which:

FIG. 1 illustrates a high-level component diagram of an illustrative rehabilitation system architecture according to certain embodiments of this disclosure;

FIG. 2 illustrates a perspective view of an example of an exercise and rehabilitation device according to certain embodiments of this disclosure;

FIG. 3 illustrates example operations of a method for controlling an electromechanical device for rehabilitation in various modes according to certain embodiments of this disclosure;

FIG. 4 illustrates example operations of a method for controlling an amount of resistance provided by an electromechanical device according to certain embodiments of this disclosure;

FIG. 5 illustrates example operations of a method for using a goniometer to measure angles of bend and/or extension of a lower leg relative to an upper leg according to certain embodiments of this disclosure;

FIG. 6 illustrates an exploded view of components of the exercise and rehabilitation device according to certain embodiments of this disclosure;

FIG. 7 illustrates an exploded view of a right pedal assembly according to certain embodiments of this disclosure;

FIG. 8 illustrates an exploded view of a motor drive assembly according to certain embodiments of this disclosure;

FIG. 9 illustrates an exploded view of a portion of a goniometer according to certain embodiments of this disclosure;

FIG. 10 illustrates a top view of a wristband according to certain embodiments of this disclosure;

FIG. 11 illustrates an exploded view of a pedal according to certain embodiments of this disclosure;

FIG. 12 illustrates additional views of the pedal according to certain embodiments of this disclosure;

FIG. 13 illustrates an example user interface of the user portal, and the user interface is configured to present a treatment plan for a user according to certain embodiments of this disclosure;

FIG. 14 illustrates an example user interface of the user portal, and the user interface is configured to present pedal settings for a user according to certain embodiments of this disclosure;

FIG. 15 illustrates an example user interface of the user portal, and the user interface is configured to present a scale for measuring pain of the user at a beginning of a pedaling session according to certain embodiments of this disclosure;

FIG. 16 illustrates an example user interface of the user portal, and the user interface is configured to present that the electromechanical device is operating in a passive mode according to certain embodiments of this disclosure;

FIGS. 17A-D illustrate an example user interface of the user portal, and the user interface is configured to present that the electromechanical device is operating in active-assisted mode and if and/or to what extent the user is applying various amounts of force to the pedals according to certain embodiments of this disclosure;

FIG. 18 illustrates an example user interface of the user portal, and the user interface is configured to present a request to modify pedal position while the electromechanical device is operating in active-assisted mode according to certain embodiments of this disclosure;

FIG. 19 illustrates an example user interface of the user portal, and the user interface is configured to present a scale for measuring pain of the user at an end of a pedaling session according to certain embodiments of this disclosure;

FIG. 20 illustrates an example user interface of the user portal, the user interface is configured to enable the user to capture an image of the body part under rehabilitation according to certain embodiments of this disclosure;

FIGS. 21A-D illustrate an example user interface of the user portal, and the user interface is configured to present angles of extension and bend of a lower leg relative to an upper leg according to certain embodiments of this disclosure;

FIG. 22 illustrates an example user interface of the user portal, and the user interface is configured to present a progress screen for a user extending the lower leg away from the upper leg according to certain embodiments of this disclosure;

FIG. 23 illustrates an example user interface of the user portal, and the user interface is configured to present a progress screen for a user bending the lower leg toward the upper leg according to certain embodiments of this disclosure;

FIG. 24 illustrates an example user interface of the user portal, and the user interface is configured to present a progress screen for measuring a pain level of the user according to certain embodiments of this disclosure;

FIG. 25 illustrates an example user interface of the user portal, and the user interface is configured to present a progress screen for measuring a strength of a body part according to certain embodiments of this disclosure;

FIG. 26 illustrates an example user interface of the user portal, and the user interface is configured to present a progress screen capable of displaying an number of steps of the user according to certain embodiments of this disclosure;

FIG. 27 illustrates an example user interface of the user portal, and the user interface is configured to present that the electromechanical device is operating in a manual mode according to certain embodiments of this disclosure;

FIG. 28 illustrates an example user interface of the user portal, and the user interface is configured to present an option to modify a speed of the electromechanical device operating in the passive mode according to certain embodiments of this disclosure;

FIG. 29 illustrates an example user interface of the user portal, and the user interface is configured to present an option to modify a minimum speed of the electromechanical device operating in the active-assisted mode according to certain embodiments of this disclosure;

FIG. 30 illustrates an example user interface of the clinical portal, and the user interface is configured to present various options available to the clinician according to certain embodiments of this disclosure; and

FIG. 31 illustrates an example computer system according to certain embodiments of this disclosure.

DETAILED DESCRIPTION

Improvement is desired in the field of devices used for rehabilitation and exercise. People may sprain, fracture, tear or otherwise injure a body part and then consult a physician to diagnose the injury. In some instances, the physician may prescribe a treatment plan that includes operating one or more electromechanical devices (e.g., pedaling devices for arms or legs) for a period of time to exercise the affected area in an attempt to regain normal or closer-to-normal function by rehabilitating the injured body part and affected proximate areas. In other instances, the person with the injury may determine to operate a device without consulting a physician. In either scenario, the devices that are operated lack effective monitoring of (i) progress of rehabilitation of the affected area and (ii) control over the electromechanical device during operation by the user. Conventional devices lack components that enable the operation of the electromechanical device in various modes designed to improve the rate and/or enhance the effectiveness of rehabilitation. Further, conventional rehabilitation systems lack monitoring devices that aid in determining one or more properties of the user (e.g., range of motion of the affected area, heartrate of the user, etc.) and enable the adjustment of components based on the determined properties. When the user is supposed to be adhering to a treatment plan, conventional rehabilitation systems may not provide to the physician real-time results of sessions. That is, typically, the physicians have to rely on the patient's word as to whether he or she is adhering to the treatment plan. As a result of the abovementioned issues, conventional rehabilitation systems that use electromechanical devices may not provide effective and/or efficient rehabilitation of the affected body part.

Accordingly, aspects of the present disclosure generally relate to a control system for a rehabilitation and exercise electromechanical device (referred to herein as “electromechanical device” or “device”). The electromechanical device may include an electric motor configured to drive one or more radially-adjustable couplings to rotationally move pedals coupled to the radially-adjustable couplings. The electromechanical device may be operated by a user engaging the pedals with his or her hands or feet and rotating the pedals to exercise and/or rehabilitate a desired body part. The electromechanical device and the control system may be included as part of a larger rehabilitation system. The rehabilitation system may also include monitoring devices (e.g., goniometers, wristbands, force sensors in the pedals, etc.) that provide valuable information about the user to the control system. As such, the monitoring devices may be in direct or indirect communication with the control system.

The monitoring devices may include a goniometer configured to measure a range of motion (e.g., angles of extension and/or bend) of a body part to which the goniometer is attached. The measured range of motion may be presented to the user and/or a physician via a user portal and/or a clinical portal. Also, to operate the electromechanical device during a treatment plan, the control system may use the measured range of motion to determine whether to adjust positions of the pedals on the radially-adjustable couplings and/or to change the mode types from one mode to another (e.g., from/to: passive, active-assisted, resistive, active) and/or durations. The monitoring devices may also include a wristband configured to track the steps of the user over a time period (e.g., a day, a week, etc.) and/or measure vital signs of the user (e.g., heartrate, blood pressure, oxygen level, etc.). The monitoring devices may also include force sensors disposed in the pedals and configured to measure the force exerted by the user on the pedals.

The control system may enable operating the electromechanical device in a variety of modes, such as a passive mode, an active-assisted mode, a resistive mode, and/or an active mode. The control system may use the information received from the measuring devices to adjust parameters (e.g., reduce resistance provided by electric motor, increase resistance provided by the electric motor, increase/decrease speed of the electric motor, adjust position of pedals on radially-adjustable couplings, etc.) while operating the electromechanical device in the various modes. The control system may receive the information from the monitoring devices, aggregate the information, make determinations using the information, and/or transmit the information to a cloud-based computing system for storage. The cloud-based computing system may maintain the information related to each user. As used herein, a cloud-based computing system refers, without limitation, to any remote computing system accessed over a network link.

A clinician and/or a machine learning model may generate a treatment plan for a user to rehabilitate a part of their body using at least the electromechanical device. A treatment plan may include a set of pedaling sessions using the electromechanical device, a set of joint extension sessions, a set of flex sessions, a set of walking sessions, a set of heartrate goals per pedaling session and/or walking session, and the like.

Each pedaling session may specify that a user is to operate the electromechanical device in a combination of one or more modes, including: passive, active-assisted, active, and resistive. The pedaling session may specify that the user is to wear the wristband and the goniometer during the pedaling session. Further, each pedaling session may include information specifying a set amount of time in which the electromechanical device is to operate in each mode, a target heartrate for the user during each mode in the pedaling session, target forces that the user is to exert on the pedals during each mode in the pedaling session, target ranges of motion the body parts are to attain during the pedaling session, positions of the pedals on the radially-adjustable couplings, and the like.

Each joint extension session may specify information relating to a target angle of extension at the joint, and each set of joint flex sessions may specify information relating to a target angle of flex at the joint. Each walking session may specify a target number of steps the user should take over a set period of time (e.g., a day, a week, etc.) and/or a target heartrate to achieve and/or maintain during the walking session.

The treatment plan may be stored in the cloud-based computing system and, when the user is ready to begin the treatment plan, downloaded to the computing device of the user. In some embodiments, the computing device that executes a clinical portal module (alternatively referred to herein as a clinical portal) may transmit the treatment plan to the computing device that executes a user portal and the user may initiate the treatment plan when ready.

In addition, the disclosed rehabilitation system may enable a physician to use the clinical portal to monitor the progress of the user in real-time. The clinical portal may present information pertaining to when the user is engaged in one or more sessions, statistics (e.g., speed, revolutions per minute, positions of pedals, forces on the pedals, vital signs, numbers of steps taken by user, ranges of motion, etc.) of the sessions, and the like. The clinical portal may also enable the physician to view before and after session images of the affected body part of the user to enable the physician to judge how well the treatment plan is working and/or to make adjustments to the treatment plan. The clinical portal may enable the physician, based on information received from the control system, to dynamically change a parameter (e.g., position of pedals, amount of resistance provided by electric motor, speed of the electric motor, duration of one of the modes, etc.) of the treatment plan in real-time.

The disclosed techniques provide numerous benefits over conventional systems. For example, to enhance the efficiency and effectiveness of rehabilitation of the user, the rehabilitation system provides granular control over the components of the electromechanical device. The control system enables, by controlling the electric motor, operating the electromechanical device in any suitable combination of the modes described herein. Further, the control system may use information received from the monitoring devices during a pedaling session to adjust parameters of components of the electromechanical device in real-time, for example. Additional benefits of this disclosure may include enabling a computing device operated by a physician to monitor the progress of a user participating in a treatment plan in real-time and/or to control operation of the electromechanical device during a pedaling session.

FIGS. 1 through 31, discussed below, and the various embodiments used to describe the principles of this disclosure are by way of illustration only and should not be construed in any way to limit the scope of the disclosure.

FIG. 1 illustrates a high-level component diagram of an illustrative rehabilitation system architecture 100 according to certain embodiments of this disclosure. In some embodiments, the system architecture 100 may include a computing device 102 communicatively coupled to an electromechanical device 104, a goniometer 106, a wristband 108, and/or pedals 110 of the electromechanical device 104. Each of the computing device 102, the electromechanical device 104, the goniometer 106, the wristband 108, and the pedals 110 may include one or more processing devices, memory devices, and network interface cards. The network interface cards may enable communication via a wireless protocol for transmitting data over short distances, such as Bluetooth, ZigBee, NFC, etc. In some embodiments, the computing device 102 is communicatively coupled via Bluetooth to the electromechanical device 104, goniometer 106, the wristband 108, and/or the pedals 110.

Additionally, the network interface cards may enable communicating data over long distances, and in one example, the computing device 102 may communicate with a network 112. Network 112 may be a public network (e.g., connected to the Internet via wired means (Ethernet) or wireless means (WiFi)), a private network (e.g., a local area network (LAN) or wide area network (WAN)), or a combination thereof. The computing device 102 may be communicatively coupled with a computing device 114 and a cloud-based computing system 116.

The computing device 102 may be any suitable computing device, such as a laptop, tablet, smartphone, computer or Internet of Things (IoT) sensor or device. (Other computing devices referenced herein may also be Internet of Things (IoT) sensors or devices.) The computing device 102 may include a display that is capable of presenting a user interface, such as a user portal 118. The user portal 118 may be implemented in computer instructions stored on the one or more memory devices of the computing device 102 and executable by the one or more processing devices of the computing device 102. The user portal 118 may present to a user various screens that enable the user to view a treatment plan, initiate a pedaling session for the purpose of executing the treatment plan, control parameters of the electromechanical device 104, view progress of rehabilitation during the pedaling session, and so forth as described in more detail below. The computing device 102 may also include instructions stored on the one or more memory devices that, when executed by the one or more processing devices of the computing device 102, perform operations to control the electromechanical device 104.

The computing device 114 may execute a clinical portal 126. The clinical portal 126 may be implemented in computer instructions stored on the one or more memory devices of the computing device 114 and executable by the one or more processing devices of the computing device 114. The clinical portal 126 may present to a physician or a clinician various screens that enable the physician to create a treatment plan for a patient or user, view progress of the user throughout the treatment plan, view measured properties (e.g., angles of bend/extension, force exerted on the pedals 110, heart rate, steps taken, images of the affected body part) of the user during sessions of the treatment plan, and/or view properties (e.g., modes completed, revolutions per minute, etc.) of the electromechanical device 104 during sessions of the treatment plan. So the patient may begin the treatment plan, the treatment plan specific to a patient may be transmitted via the network 112 to the cloud-based computing system 116 for storage and/or to the computing device 102. The terms “patient” and “user” may be used interchangeably throughout this disclosure.

The electromechanical device 104 may be an adjustable pedaling device for exercising and rehabilitating arms and/or legs of a user. The electromechanical device 104 may include at least one or more motor controllers 120, one or more electric motors 122, and one or more radially-adjustable couplings 124. Two pedals 110 may be coupled to two radially-adjustable couplings 124 via left and right pedal assemblies that each include respective stepper motors. The motor controller 120 may be operatively coupled to the electric motor 122 and configured to provide commands to the electric motor 122 to control operation of the electric motor 122. The motor controller 120 may include any suitable microcontroller including a circuit board having one or more processing devices, one or more memory devices (e.g., read-only memory (ROM) and/or random access memory (RAM)), one or more network interface cards, and/or programmable input/output peripherals. The motor controller 120 may provide control signals or commands to drive the electric motor 122. The electric motor 122 may be powered to drive one or more radially-adjustable couplings 124 of the electromechanical device 104 in a rotational manner. The electric motor 122 may provide the driving force to rotate the radially-adjustable couplings 124 at configurable speeds. The couplings 124 are radially-adjustable in that a pedal 110 attached to the coupling 124 may be adjusted to a number of positions on the coupling 124 in a radial fashion. Further, the electromechanical device 104 may include a current shunt to provide resistance to dissipate energy from the electric motor 122. As such, the electric motor 122 may be configured to provide resistance to rotation of the radially-adjustable couplings 124.

The computing device 102 may be communicatively connected to the electromechanical device 104 via the network interface card on the motor controller 120. The computing device 102 may transmit commands to the motor controller 120 to control the electric motor 122. The network interface card of the motor controller 120 may receive the commands and transmit the commands to the electric motor 122 to drive the electric motor 122. In this way, the computing device 102 is operatively coupled to the electric motor 122.

The computing device 102 and/or the motor controller 120 may be referred to as a control system herein. The user portal 118 may be referred to as a user interface of the control system herein. The control system may control the electric motor 122 to operate in a number of modes: passive, active-assisted, resistive, and active. The passive mode may refer to the electric motor 122 independently driving the one or more radially-adjustable couplings 124 rotationally coupled to the one or more pedals 110. In the passive mode, the electric motor 122 may be the only source of driving force on the radially-adjustable couplings. That is, the user may engage the pedals 110 with their hands or their feet and the electric motor 122 may rotate the radially-adjustable couplings 124 for the user. This may enable moving the affected body part and stretching the affected body part without the user exerting excessive force.

The active-assisted mode may refer to the electric motor 122 receiving measurements of revolutions per time period, such as a revolutions per minute, second, or any other desired time interval, of the one or more radially-adjustable couplings 124, and, when the measured revolutions per time period satisfy a threshold condition, causing the electric motor 122 to drive the one or more radially-adjustable couplings 124 rotationally coupled to the one or more pedals 110. The threshold condition may be configurable by the user and/or the physician. As long as the revolutions per time period are above a revolutions per time period threshold (e.g., revolutions threshold 1732) and the threshold condition is not satisfied, the electric motor 122 may be powered off while the user provides the driving force to the radially-adjustable couplings 124. When the revolutions per time period are less than the revolutions per minute threshold, then the threshold condition is satisfied and the electric motor 122 may be controlled to drive the radially-adjustable couplings 124 to maintain the revolutions per time period threshold.

The resistive mode may refer to the electric motor 122 providing resistance to rotation of the one or more radially-adjustable couplings 124 coupled to the one or more pedals 110. The resistive mode may increase the strength of the body part being rehabilitated by causing the muscle to exert force to move the pedals 110 against the resistance provided by the electric motor 122.

The active mode may refer to the electric motor 122 powering off to provide no driving force assistance to the radially-adjustable couplings 124. Instead, in this mode, the user, using their hands or feet, for example, provides the sole driving force of the radially-adjustable couplings.

During one or more of the modes, each of the pedals 110 may measure force exerted by a part of the body of the user on the pedal 110. For example, the pedals 110 may each contain any suitable sensor (e.g., strain gauge load cell, piezoelectric crystal, hydraulic load cell, etc.) for measuring force exerted on the pedal 110. Further, the pedals 110 may each contain any suitable sensor for detecting whether the body part of the user separates from contact with the pedals 110. In some embodiments, the measured force may be used to detect whether the body part has separated from the pedals 110. The force detected may be transmitted via the network interface card of the pedal 110 to the control system (e.g., computing device 102 and/or motor controller 120). As described further below, the control system may, based on the measured force, modify a parameter of operating the electric motor 122. Further, the control system may perform one or more preventative actions (e.g., locking the electric motor 122 to stop the radially-adjustable couplings 124 from moving, slowing down the electric motor 122, presenting a notification to the user, etc.) when the body part is detected as separated from the pedals 110, among other things.

The goniometer 106 may be configured to measure angles of extension and/or bend of body parts and to transmit the measured angles to the computing device 102 and/or the computing device 114. The goniometer 106 may be included in an electronic device that includes the one or more processing devices, memory devices, and/or network interface cards. The goniometer 106 may be attached to the user's body, for example, to an upper leg and a lower leg. The goniometer 106 may be coupled to the user via a strap, an adhesive, a mechanical brace, or any other desired attachment. The goniometer 106 may be disposed in a cavity of the mechanical brace. The cavity of the mechanical brace may be located near a center of the mechanical brace where the mechanical brace affords to bend and extend. The mechanical brace may be configured to secure to an upper body part (e.g., arm, etc.) and a lower body part (e.g., leg, etc.) to measure the angles of bend as the body parts are extended away from one another or retracted closer to one another.

The wristband 108 may include a 3-axis accelerometer to track motion in the X, Y, and Z directions, an altimeter for measuring altitude, and/or a gyroscope to measure orientation and rotation. The accelerometer, altimeter, and/or gyroscope may be operatively coupled to a processing device in the wristband 108 and may transmit data to the processing device. The processing device may cause a network interface card to transmit the data to the computing device 102 and the computing device 102 may use the data representing acceleration, frequency, duration, intensity, and patterns of movement to track steps taken by the user over certain time periods (e.g., days, weeks, etc.). The computing device 102 may transmit the steps to the computing device 114 executing a clinical portal 126. Additionally, in some embodiments, the processing device of the wristband 108 may determine the steps taken and transmit the steps to the computing device 102. In some embodiments, the wristband 108 may use photoplethysmography (PPG) to measure heartrate that detects an amount of red light or green light on the skin of the wrist. For example, blood may absorb green light so when the heart beats, the blood flow may absorb more green light, thereby enabling the detection of heartrate. The heartrate may be sent to the computing device 102 and/or the computing device 114.

The computing device 102 may present the steps taken by the user and/or the heartrate via respective graphical elements on the user portal 118, as discussed further below. The computing device may also use the steps taken and/or the heart rate to control a parameter of operating the electromechanical device 104. For example, if the heartrate exceeds a target heartrate for a pedaling session, the computing device 102 may control the electric motor 122 to reduce resistance being applied to rotation of the radially-adjustable couplings 124. In another example, if the steps taken are below a step threshold for a day, the treatment plan may increase the amount of time for one or more modes in which the user is to operate the electromechanical device 104 to ensure the affected body part is getting sufficient movement by reaching or exceeding the step threshold.

In some embodiments, the cloud-based computing system 116 may include one or more servers 128 that form a distributed computing architecture. Each of the servers 128 may include one or more processing devices, memory devices, data storage, and/or network interface cards. The servers 128 may be in communication with one another via any suitable communication protocol. The servers 128 may store profiles for each of the users that use the electromechanical device 104. The profiles may include information about the users, such as respective treatment plans, the affected body parts, any procedures the users had performed on the affected body parts, health, age, race, measured data from the goniometer 106, measured data from the wristband 108, measured data from the pedals 110, user input received at the user portal 118 during operation of any of the modes of the treatment plan, a specification of a level of discomfort, comfort, or general patient satisfaction that the user experiences before and after any of the modes, before and after session images of the affected body part, and so forth.

In some embodiments, the cloud-based computing system 116 may include a training engine 130 capable of generating one or more machine learning models 132. The machine learning models 132 may be trained to generate treatment plans for the patients in response to receiving various inputs (e.g., a procedure performed on the patient, an affected body part on which the procedure was performed, other health characteristics or demographic attributes (e.g., age, race, fitness level, etc.)). The one or more machine learning models 132 may be generated by the training engine 130 and may be implemented in computer instructions executable by one or more processing devices of the training engine 130 and/or the servers 128. To generate the one or more machine learning models 132, the training engine 130 may train the one or more machine learning models 132. The training engine 130 may use a base data set of patient characteristics or attributes, treatment plans followed by the patient, and results of the treatment plans followed by the patients. The results may include information indicating whether a given treatment plan led to full recovery of the affected body part, partial recovery of the affected body part, or lack of recovery of the affected body part, and the degree to which such recovery was achieved. The training engine 130 may be a rackmount server, a router computer, a personal computer, a portable digital assistant, a smartphone, a laptop computer, a tablet computer, a camera, a video camera, a netbook, a desktop computer, a media center, an IoT device, or any combination of the above. The one or more machine learning models 132 may refer to model artifacts that are created by the training engine 130 using training data that includes training inputs and corresponding target outputs. The training engine 130 may find patterns in the training data that map the training input to the target output, and generate the machine learning models 132 that capture these patterns. Although depicted separately from the computing device 102, in some embodiments, the training engine 130 and/or the machine learning models 132 may reside on the computing device 102 and/or the computing device 114.

The machine learning models 132 may include one or more of a neural network, such as an image classifier, recurrent neural network, convolutional network, generative adversarial network, a fully connected neural network, or some combination thereof, for example. In some embodiments, the machine learning models 132 may be composed of a single level of linear or non-linear operations or may include multiple levels of non-linear operations. For example, the machine learning model 132 may include numerous layers and/or hidden layers that perform calculations (e.g., dot products) using various neurons. The rehabilitation system architecture 100 can include additional and/or fewer components and is not limited to those illustrated in FIG. 1.

FIG. 2 illustrates a perspective view of an example of an exercise and rehabilitation device, such as the electromechanical device 104, according to certain embodiments of this disclosure. The electromechanical device 104 is shown having pedals 110 on opposite sides and which are adjustably positionable relative to one another on respective radially-adjustable couplings 124. The electromechanical device 104 is configured as a small and portable unit so that it is easily transported to different locations at which rehabilitation or treatment is to be provided, such as at patients' homes, alternative care facilities, or the like. The patient may sit in a chair proximate the electromechanical device 104 to engage the electromechanical device 104 with their feet, for example.

The electromechanical device 104 includes a rotary device such as radially-adjustable couplings 124 or a flywheel or flywheels or the like rotatably mounted such as by a central hub to a frame 200 or other support. The pedals 110 are configured for interacting with a patient to be rehabilitated and may be configured for use with lower body extremities such as the feet, legs, and the like, or with upper body extremities, such as the hands, arms, and the like. For example, the pedal 110 may be a bicycle pedal of the type having a foot support rotatably mounted onto an axle with bearings. To locate the pedal on the radially-adjustable coupling 12. the axle may or may not have exposed end threads for engaging a mount on the radially-adjustable coupling 124. The radially-adjustable coupling 124 may include an actuator configured to radially adjust the location of the pedal to various positions on the radially-adjustable coupling 124.

Alternatively, the radially-adjustable coupling 124 may be configured to have both pedals 110 on opposite sides of a single coupling 124. In some embodiments, as depicted, a pair of radially-adjustable couplings 124 may be spaced apart from one another but interconnected to the electric motor 122. In the depicted example, the computing device 102 may be mounted on the frame 200 and may be detachable and held by the user while the user operates the electromechanical device 104. The computing device 102 may present the user portal and control the operation of the electric motor 122, as described herein.

In some embodiments, as described in U.S. Pat. No. 10,173,094 (U.S. application Ser. No. 15/700,293), which is incorporated by reference herein in its entirety for all purposes, the electromechanical device 104 may take the form of a traditional exercise/rehabilitation device which is more or less non-portable and remains in a fixed location, such as a rehabilitation clinic or medical practice. This embodiment of the electromechanical device 104 may include a seat and is less portable than the electromechanical device 104 shown in FIG. 2.

FIG. 3 illustrates example operations of a method 300 for controlling an electromechanical device for rehabilitation in various modes according to certain embodiments of this disclosure. The method 300 may be performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), firmware, software, or a combination of them. The method 300 and/or each of their individual functions, subroutines, or operations may be performed by one or more processors of a control system (e.g., computing device 102 of FIG. 1) implementing the method 300. The method 300 may be implemented as computer instructions that, when executed by a processing device, execute the user portal 118. In certain implementations, the method 300 may be performed by a single processing thread. Alternatively, the method 300 may be performed by two or more processing threads, each thread implementing one or more individual functions, routines, subroutines, or operations of the methods. Various operations of the method 300 may be performed by one or more of the cloud-based computing system 116, the motor controller 120, the pedals 110, the goniometer 106, the wristband 108, and/or the computing device 114 of FIG. 1.

As discussed above, an electromechanical device may include one or more pedals coupled to one or more radially-adjustable couplings, an electric motor coupled to the one or more pedals via the one or more radially-adjustable couplings, and the control system including one or more processing devices operatively coupled to the electric motor. In some embodiments, the control system (e.g., computing device 102 and/or motor controller 120) may store instructions and one or more operations of the control system may be presented via the user portal. In some embodiments, the radially-adjustable couplings are configured for translating rotational motion of the electric motor to radial motion of the pedals.

At block 302, responsive to a first trigger condition occurring, the processing device may control the electric motor to operate in a passive mode by independently driving the one or more radially-adjustable couplings rotationally coupled to the one or more pedals. “Independently drive” may refer to the electric motor driving the one or more radially-adjustable couplings without the aid of another driving source (e.g., the user). The first trigger condition may include an initiation of a pedaling session via the user interface of the control system, a period of time elapsing, a detected physical condition (e.g., heartrate, oxygen level, blood pressure, etc.) of a user operating the electromechanical device, a request received from the user via the user interface, or a request received via a computing device communicatively coupled to the control system (e.g., a request received from the computing device executing the clinical portal). While operating in the passive mode, the processing device may control the electric motor to independently drive the one or more radially-adjustable couplings rotationally coupled to the one or more pedals at a controlled speed specified in a treatment plan for a user operating the electromechanical device.

In some embodiments, the electromechanical device may be configured such that the processor controls the electric motor to individually drive the radially-adjustable couplings. For example, the processing device may control the electric motor to individually drive the left or right radially-adjustable coupling, while allowing the user to provide the force to drive the other radially-adjustable coupling. As another example, the processing device may control the electric motor to drive both the left and right radially-adjustable couplings but at different speeds. This granularity of control may be beneficial by controlling the speed at which a healing body part is moved (e.g., rotated, flexed, extended, etc.) to avoid tearing tendons or causing pain to the user.

At block 304, responsive to a second trigger condition occurring, the processing device may control the electric motor to operate in an active-assisted mode by measuring (block 306) revolutions per minute of the one or more radially-adjustable couplings, and causing (block 308) the electric motor to drive the one or more radially-adjustable couplings rotationally coupled to the one or more pedals when the measured revolutions per minute satisfy a threshold condition. The second trigger condition may include an initiation of a pedaling session via the user interface of the control system, a period of time elapsing, a detected physical condition (e.g., heartrate, oxygen level, blood pressure, etc.) of a user operating the electromechanical device, a request received from the user via the user interface, or a request received via a computing device communicatively coupled to the control system (e.g., a request received from the computing device executing the clinical portal). The threshold condition may be satisfied when the measured revolutions per minute are less than a minimum revolutions per minute. In such an instance, the electric motor may begin driving the one or more radially-adjustable couplings to increase the revolutions per minute of the radially-adjustable couplings.

As with the passive mode, in the active-assisted mode, the processing device may control the electric motor to individually drive the one or more radially-adjustable couplings. For example, if just a right knee is being rehabilitated, the revolutions per minute of the right radially-adjustable coupling may be measured and the processing device may control the electric motor to individually drive the right radially-adjustable coupling when the measured revolutions per minute are less than the minimum revolutions per minute. In some embodiments, there may be different minimum revolutions per minute set for the left radially-adjustable coupling and the right radially-adjustable coupling, and the processing device may control the electric motor to individually drive the left radially-adjustable coupling and the right radially-adjustable coupling as appropriate to maintain the different minimum revolutions per minute.

At block 310, responsive to a third trigger condition occurring, the processing device may control the electric motor to operate in a resistive mode by providing resistance to rotation of the one or more radially-adjustable couplings coupled to the one or more pedals. The third trigger condition may include an initiation of a pedaling session via the user interface of the control system, a period of time elapsing, a detected physical condition (e.g., heartrate, oxygen level, blood pressure, etc.) of a user operating the electromechanical device, a request received from the user via the user interface, or a request received via a computing device communicatively coupled to the control system (e.g., a request received from the computing device executing the clinical portal).

In some embodiments, responsive to a fourth trigger condition occurring, the processing device may be further configured to control the electric motor to operate in an active mode by powering off to enable another source (e.g., the user) to drive the one or more radially-adjustable couplings via the one or more pedals. In the active mode, the another source may drive the one or more radially-adjustable couplings at any desired speed via the one or more pedals.

In some embodiments, the processing device may control the electric motor to operate in each of the passive mode, the active-assisted mode, the resistive mode, and/or the active mode for a respective period of time during a pedaling session (e.g., based on a treatment plan for a user operating the electromechanical device). In some embodiments, the various modes and the respective periods of time may be selected by a clinician that sets up the treatment plan using the clinical portal. In some embodiments, the various modes and the respective periods of time may be selected by a machine learning model trained to receive parameters (e.g., procedure performed on the user, body part on which the procedure was performed, health of the user) and to output a treatment plan to rehabilitate the affected body part, as described above.

In some embodiments, the processing device may modify one or more positions of the one or more pedals on the one or more radially-adjustable couplings to change one or more diameters of ranges of motion of the one or more pedals during any of the passive mode, the active-assisted mode, the resistive mode, and/or the active mode throughout a pedaling session for a user operating the electromechanical device. The processing device may further be configured to modify the position of one of the one or more pedals on one of the one or more radially-adjustable couplings to change the diameter of the range of motion of the one of the one or more pedals while maintaining another position of another of the one or more pedals on another of the one or more radially-adjustable couplings to maintain another diameter of another range of motion of another pedal. In some embodiments, the processing device may cause both positions of the pedals to move to change the diameter of the range of motion for both pedals. The amount of movement of the positions of the pedals may be individually controlled in order to provide different diameters of ranges of motions of the pedals as desired.

In some embodiments, the processing device may receive, from the goniometer worn by the user operating the electromechanical device, at least one of an (i) angle of extension of a joint of the user during a pedaling session or an (ii) angle of bend of the joint of the user during the pedaling session. In some instances, the joint may be a knee or an elbow. The goniometer may be configured to measure the angles of bend and/or extension of the joint and to continuously, continually, or periodically transmit the angle measurements received by the processing device. The processing device may modify the positions of the pedals on the radially-adjustable couplings to change the diameters of the ranges of motion of the pedals based on the at least one of the angle of extension of the joint of the user or the angle of bend of the joint of the user.

In some embodiments, the processing device may receive, from the goniometer worn by the user, a set of angles of extension between an upper leg and a lower leg at a knee of the user as the user extends the lower leg away from the upper leg via the knee. In some embodiments, the goniometer may send the set of angles of extension between an upper arm, upper body, etc. and a lower arm, lower body, etc. The processing device may present, on a user interface of the control system, a graphical animation of the upper leg, the lower leg, and the knee of the user as the lower leg is extended away from the upper leg via the knee. The graphical animation may include the set of angles of extension as the set of angles of extension changes during the extension. The processing device may store, in a data storage of the control system, a lowest value of the set of angles of extension as an extension statistic for an extension session. A set of extension statistics may be stored for a set of extension sessions specified by the treatment plan. The processing device may present progress of the set of extension sessions throughout the treatment plan via a graphical element (e.g., line graph, bar chart, etc.) on the user interface presenting the set of extension statistics.

In some embodiments, the processing device may receive, from the goniometer worn by the user, a set of angles of bend or flex between an upper leg and a lower leg at a knee of the user as the user retracts the lower leg closer to the upper leg via the knee. In some embodiments, the goniometer may send the set of angles of bend between an upper arm, upper body, etc. and a lower arm, lower body, etc. The processing device may present, on a user interface of the control system, a graphical animation of the upper leg, the lower leg, and the knee of the user as the lower leg is retracted closer to the upper leg via the knee. The graphical animation may include the set of angles of bend as the set of angles of bend changes during the bending. The processing device may store, in a data storage of the control system, a highest value of the set of angles of bend as a bend statistic for a bend session. A set of bend statistics may be stored for a set of bend sessions specified by the treatment plan. The processing device may present progress of the set of bend sessions throughout the treatment plan via a graphical element (e.g., line graph, bar chart, etc.) on the user interface presenting the set of bend statistics.

In some embodiments, the angles of extension and/or bend of the joint may be transmitted by the goniometer to a computing device executing a clinical portal. A clinician may operate the computing device executing the clinical portal. The clinical portal may present a graphical animation in real-time of the upper leg extending away from the lower leg and/or the upper leg bending closer to the lower leg during a pedaling session, extension session, and/or a bend session of the user. In some embodiments, the clinician may provide notifications to the computing device to present via the user portal. The notifications may indicate that the user has satisfied a target extension and/or bend angle. Other notifications may indicate that the user has extended or retracted a body part too far and should cease the extension and/or bend session. In some embodiments, the computing device executing the clinical portal may transmit a control signal to the control system to move a position of a pedal on the radially-adjustable coupling based on the angle of extension or angle of bend received from the goniometer. That is, the clinician can in real-time increase a diameter of range of motion for a body part of the user based on the measured angles of extension and/or bend during a pedaling session. This may enable the clinician to dynamically control the pedaling session to enhance the rehabilitation results of the pedaling session.

In some embodiments, the processing device may receive, from a wearable device (e.g., a wristband), a number of steps taken by a user over a certain time period (e.g., a day, a week, etc.). The processing device may calculate whether the number of steps satisfies a step threshold of a walking session of a treatment plan for the user. The processing device may be configured to present on a user interface of the control system the number of steps taken by the user and may be configured to present an indication of whether the number of steps satisfies the step threshold.

The wearable device, which is interchangeably described herein as a wristband, though a person having ordinary skill in the art will readily comprehend in light of having read the present disclosure that other varieties of wearable devices may also be used without departing from the scope and intent of the present disclosure, may also measure one or more vital statistics of the user, such as a heartrate, oxygen level, blood pressure, and the like. The measurements of the vital statistics may be performed at any suitable time, such as during a pedaling session, walking session, extension session, bend session, and/or any other desired session. The wristband may transmit the one or more vital statistics to the control system. The processing device of the control system may use the vital statistics to determine whether to reduce resistance the electric motor is providing for the purpose of lowering one of the vital statistics (e.g., heartrate) when that vital statistic is above a threshold, to determine whether the user is in pain when one of the vital statistics is elevated beyond a threshold, to determine whether to provide a notification indicating the user should take a break or increase the intensity of the appropriate session, and so forth.

In some embodiments, the processing device may receive a request to stop the one or more pedals from moving. The request may be received by a user selecting on the user portal of the control system a graphical icon representing “stop.” The processing device may cause the electric motor to lock and stop the one or more pedals from moving over a configured period of time (e.g., instantly, over 1 second, 2 seconds, 3 seconds, 5 seconds, 10 seconds, or any period of time less than those, more than those or in between those, etc.). One benefit of including an electric motor in the electromechanical device is that the motor can be configured to provide the ability to stop the movement of the pedals as soon as a user desires.

In some embodiments, the processing device may receive, from one or more force sensors operatively coupled to the one or more pedals and the one or more processing devices, one or more measurements of force on the one or more pedals. The force sensors may be operatively coupled to the one or more processing devices via a wireless connection (e.g., Bluetooth) enabled by wireless circuitry in the pedals. The processing device may determine, based on the one or more measurements of force, whether the user has fallen from the electromechanical device. Responsive to determining that the user has fallen from the electromechanical device, the processing device may lock the electric motor to stop the one or more pedals from moving.

Additionally or alternatively, the processing device may determine, based on the one or more measurements of force that the user's feet or hands have separated from the pedals. Responsive to determining that the feet or hands have separated from the pedals, the processing device may lock the electric motor to stop the one or more pedals from moving. Also, the processing device may present a notification on a user interface of the control system, such notification instructing the user to place their feet or hands in contact with the pedals.

In some embodiments, the processing device may receive, from the force sensors operatively coupled to the one or more pedals, the measurements of force exerted by a user on the pedals during a pedaling session. While the user pedals during the pedaling session, the processing device may present the respective measurements of force on each of the pedals on a separate respective graphical element on the user interface of the control system. Various graphical indicators may be presented on the user interface to indicate when the force is below a threshold target range, is within the threshold target range, and/or exceeds the threshold target range. Notifications may be presented to encourage the user to apply more force and/or less force to achieve the threshold target range of force. For example, the processing device may be configured to present a first notification on the user interface after the one or more measurements of force satisfy a pressure threshold and to present a second notification on the user interface after the one or more measurements do not satisfy the pressure threshold.

In addition, the processing device may provide an indicator to the user based on the one or more measurements of force. The indicator may include at least one of (1) providing haptic feedback in the pedals, handles, and/or seat of the electromechanical device, (2) providing visual feedback on the user interface (e.g., an alert, a light, a sign, etc.), (3) providing audio feedback via an audio subsystem (e.g., speaker) of the electromechanical device, or (4) illuminating a warning light of the electromechanical device.

In some embodiments, the processing device may receive, from an accelerometer of the control system, motor controller, pedal, or the like, a measurement of acceleration of movement of the electromechanical device. The processing device may determine whether the electromechanical device has moved excessively relative to a vertical axis (e.g., fallen over) based on the measurement of acceleration. Responsive to determining that the electromechanical device has moved excessively relative to the vertical axis based on the measurement of acceleration, the processing device may lock the electric motor to stop the one or more pedals from moving.

After a pedaling session is complete, the processing device may lock the electric motor to prevent the one or more pedals from moving a certain amount of time after the completion of the pedaling session. This may enable healing of the body part being rehabilitated and prevent strain on that body part by excessive movement. Upon expiration of the certain amount of time, the processing device may unlock the electric motor to enable movement of the pedals again.

The computing device can include a user portal. The user portal may provide an option to image the body part being rehabilitated. The user portal may include a display and a camera. For example, the user may place the body part within an image capture section, such as a camera, of the user portal and select an icon to capture an image of the body part. An icon, such as a camera icon, may be located on a display of the user portal. The user may select the camera icon to use the camera to capture an image or to take a photograph of a site of the body of the user. The site may be a body part such as a leg, arm, joint, such as a knee or an elbow, or any other desired site of the body of the user. The processing device can execute the instructions to store the image or photograph. The processing device may execute the instructions to transmit the image or photograph to a clinical portal. The images may be captured before and after a pedaling session, walking session, extension session, and/or bend session. These images may be sent to the cloud-based computing system to use as training data to enable the machine-learning model to determine the effects of the session. Further, the images may be sent to the computing device executing the clinical portal to enable the clinician to view the results of the sessions and modify the treatment plan if desired and/or provide notifications (e.g., reduce resistance, increase resistance, extend the joint further or less, etc.) to the user if desired.

FIG. 4 illustrates example operations of a method 400 for controlling an amount of resistance provided by an electromechanical device according to certain embodiments of this disclosure. Method 400 includes operations performed by processing devices of the control system (e.g., computing device 102) of FIG. 1. In some embodiments, one or more operations of the method 400 are implemented in computer instructions that, when executed by a processing device, execute the control system and/or the user portal. Various operations of the method 400 may be performed by one or more of the computing device 114, the cloud-based computing system 116, the motor controller 120, the pedal 110, the goniometer 106, and/or the wristband 108. The method 400 may be performed in the same or a similar manner as described above in regards to method 300.

At block 402, the processing device may receive configuration information for a pedaling session. The configuration information may be received via selection by the user on the user portal executing on the computing device, received from the computing device executing the clinical portal, downloaded from the cloud-based computing system, retrieved from a memory device of the computing device executing the user portal, or some combination thereof. For example, the clinician may select the configuration information for a pedaling session of a patient using the clinical portal and upload the configuration information from the computing device to a server of the cloud-based computing system.

The configuration information for the pedaling session may specify one or more modes in which the electromechanical device is to operate, and configuration information specific to each of the modes, an amount of time to operate each mode, and the like. For example, for a passive mode, the configuration information may specify a position for the pedal to be in on the radially-adjustable couplings and a speed at which to control the electric motor. For the resistive mode, the configuration information may specify an amount of resistive force the electric motor is to apply to rotate radially-adjustable couplings during the pedaling session, a maximum pedal force that is desired for the user to exert on each pedal of the electromechanical device during the pedaling session, and/or a revolutions per minute threshold for the radially-adjustable couplings. For the active-assisted mode, the configuration information may specify a minimum pedal force and a maximum pedal force desired for the user to exert on each pedal of the electromechanical device, a speed at which to operate the electric motor for driving one or both of the radially-adjustable couplings, and so forth.

In some embodiments, responsive to receiving the configuration information, the processing device may determine that a trigger condition has occurred. The trigger condition may include receiving a selection of a mode from a user, an amount of time elapsing, receiving a command from the computing device executing the clinical portal, or the like. The processing device may control, based on the trigger condition occurring, the electric motor to operate in a resistive mode by providing, based on the trigger condition, a resistance to rotation of the pedals.

At block 404, the processing device may set a resistance parameter and a maximum pedal force parameter based on the amount of resistive force and the maximum pedal force, respectively, included in the configuration information for the pedaling session. The resistance parameter and the maximum force parameter may be stored in a memory device of the computing device and used to control the electric motor during the pedaling session. For example, the processing device may transmit a control signal along with the resistance parameter and/or the maximum pedal force parameter to the motor controller, and the motor controller may drive the electric motor using at least the resistance parameter during the pedaling session.

At block 406, the processing device may measure force applied to pedals of the electromechanical device as a user operates (e.g., pedals) the electromechanical device. The electric motor of the electromechanical device may provide resistance during the pedaling session based on the resistance parameter. A force sensor disposed in each pedal and operatively coupled to the motor controller and/or the computing device executing the user portal may measure the force exerted on each pedal throughout the pedaling session. The force sensors may transmit the measured force to a processing device of the pedals, which in turn may cause a communication device to transmit the measured force to the processing device of the motor controller and/or the computing device.

At block 408, the processing device may determine whether the measured force exceeds the maximum pedal force parameter. To make this determination, the processing device may compare the measured force to the maximum pedal force parameter.

At block 410, responsive to determining that the measured force exceeds the maximum pedal force parameter, the processing device may reduce the resistance parameter to maintain the revolutions per minute threshold specified in the configuration information so the electric motor applies less resistance during the pedaling session. Reducing the resistance may enable the user to pedal faster, thereby increasing the revolutions per minute of the radially-adjustable couplings. Maintaining the revolutions per minute threshold may ensure that the patient is exercising the affected body part as rigorously as desired during the mode. Responsive to determining that the measured force does not exceed the maximum pedal force parameter, the processing device may, during the pedaling session, maintain the same maximum pedal force parameter specified by the configuration information.

In some embodiments, the processing device may determine that a second trigger condition has occurred. The second trigger condition may include receiving a selection of a mode from a user via the user portal, an amount of time elapsing, receiving a command from the computing device executing the clinical portal, or the like. The processing device may control, based on the trigger condition occurring, the electric motor to operate in a passive mode by independently driving one or more radially-adjustable couplings coupled to the pedals in a rotational fashion. The electric motor may drive the one or more radially-adjustable couplings at a speed specified in the configuration information without another driving source. Also, the electric motor may drive each of the one or more radially-adjustable couplings individually at different speeds.

In some embodiments, the processing device may determine that a third trigger condition has occurred. The third trigger condition may be similar to the other trigger conditions described herein. The processing device may control, based on the third trigger condition occurring, the electric motor to operate in an active-assisted mode by measuring revolutions per minute of the one or more radially-adjustable couplings coupled to the pedals and, when the measured revolutions per minute satisfy a threshold condition, causing the electric motor to drive, in a rotational fashion, the one or more radially-adjustable couplings coupled to the pedals.

In some embodiments, the processing device may receive, from a goniometer worn by the user operating the electromechanical device, a set of angles of extension between an upper leg and a lower leg at a knee of the user. The set of angles is measured as the user extends the lower leg away from the upper leg via the knee. In some embodiments, the angles of extension may represent angles between extending a lower arm away from an upper arm at an elbow. Further, the processing device may receive, from the goniometer, a set of angles of bend between the upper leg and the lower leg at the knee of the user. The set of angles of bend is measured as the user retracts the lower leg closer to the upper leg via the knee. In some embodiments, the angles of bend represent angles between bending a lower arm closer to an upper arm at an elbow.

The processing device may determine whether a range of motion threshold condition is satisfied based on the set of angles of extension and the set of angles of bend. Responsive to determining that the range of motion threshold condition is satisfied, the processing device may modify a position of one of the pedals on one of the radially-adjustable couplings to change a diameter of a range of motion of the one of the pedals. Satisfying the range of motion threshold condition may indicate that the affected body part is strong enough or flexible enough to increase the range of motion allowed by the radially-adjustable couplings.

FIG. 5 illustrates example operations of a method 500 that uses a goniometer according to certain embodiments of this disclosure for measuring angles of bend and/or extension of a lower leg relative to an upper leg. In some embodiments, one or more operations of the method 500 are implemented in computer instructions executed by the processing devices of the goniometer 106 of FIG. 1. The method 500 may be performed in the same or a similar manner as described above in regards to method 300.

At block 502, the processing device may receive a set of angles from the one or more goniometers. The goniometer may measure angles of extension and/or bend between an upper body part (leg, arm, torso, neck, head, etc.) and a lower body part (leg, arm, torso, neck head, hand, feet, etc.) as the body parts are extended and/or bent during various sessions (e.g., pedaling session, walking session, extension session, bend session, etc.). The set of angles may be received while the user is pedaling one or more pedals of the electromechanical device.

At block 504, the processing device may transmit the set of angles to a computing device controlling the electromechanical device, via one or more network interface cards. The electromechanical device may be operated by a user rehabilitating an affected body part. For example, the user may have recently had surgery to repair a tear of an anterior cruciate ligament (ACL). Accordingly, the goniometer may be secured proximate to the knee by the affected ACL around the upper and lower leg.

In some embodiments, transmitting the set of angles to the computing device controlling the electromechanical device may cause the computing device, based on the set of angles satisfying a range of motion threshold condition to adjust a position of one of one or more pedals on a radially-adjustable coupling. The range of motion threshold condition may be set based on configuration information for a treatment plan received from the cloud-based computing system or the computing device executing the clinical portal. The position of the pedal is adjusted to increase a diameter of a range of motion transited by an upper body part (e.g., an upper leg), lower body part (e.g., a lower leg), and a joint (e.g., knee) of the user as the user operates the electromechanical device. In some embodiments, the position of the pedal may be adjusted in real-time while the user is operating the electromechanical device. In some embodiments, the user portal may present a notification to the user indicating that the position of the pedal should be modified, and the user may modify the position of the pedal and resume operating the electromechanical device with the modified pedal position.

In some embodiments, transmitting the set of angles to the computing device may cause the computing device executing the user portal to present the set of angles in a graphical animation of the lower body part and the upper body part moving in real-time during the extension or the bend. In some embodiments, the set of angles may be transmitted to the computing device executing the clinical portal, and the clinical portal may present the set of angles in a graphical animation of the lower body part and the upper body part moving in real-time during the extension or the bend. In addition, the set of angles may be presented in one or more graphs or charts on the clinical portal and/or the user portal to depict progress of the extension or bend for the user.

FIGS. 6-12 illustrate various detailed views of components of the rehabilitation system disclosed herein. The rehabilitation system can include additional and/or fewer components and is not limited to those illustrated in FIGS. 6-12.

For example, FIG. 6 illustrates an exploded view of components of the exercise and rehabilitation electromechanical device 104 according to certain embodiments of this disclosure. The electromechanical device 104 may include a pedal 110 that couples to a left radially-adjustable coupling 124 via a left pedal arm assembly 600 disposed within a cavity of the left radially-adjustable coupling 124. The radially-adjustable coupling 124 may be disposed in a circular opening of a left outer cover 601 and the pedal arm assembly 600 may be secured to a drive sub-assembly 602. The drive sub-assembly 602 may include the electric motor 122 operatively coupled to the motor controller 120. The drive sub-assembly 602 may include one or more braking mechanisms, such as disc brakes, that enable instantaneously locking of the electric motor 122 or stopping of the electric motor 122 over a period of time. The electric motor 122 may be any suitable electric motor (e.g., a crystallite electric motor). The drive sub-assembly 602 may be secured to a frame sub-assembly 604. A top support sub-assembly 606 may be secured on top of the drive sub-assembly 602.

A right pedal 110 couples to a right radially-adjustable coupling 124 via a right pedal arm assembly 600 disposed within a cavity of the right radially-adjustable coupling 124. The right radially-adjustable coupling 124 may be disposed in a circular opening of a right outer cover 608 and the right pedal arm assembly 600 may be secured to the drive sub-assembly 602. An internal volume may be defined when the left outer cover 601 and the right outer cover 608 are secured together around the frame sub-assembly 604. The left outer cover 601 and the right outer cover 608 may also make up the frame of the electromechanical device 104 when secured together. The drive sub-assembly 602, top support sub-assembly 606, and pedal arm assemblies 600 may be disposed within the internal volume upon assembly. A storage compartment 610 may be secured to the frame.

Further, a computing device arm assembly 612 may be secured to the frame and a computing device mount assembly 614 may be secured to an end of the computing device arm assembly 612. The computing device 102 may be attached or detached from the computing device mount assembly 614 as desired during operation of the electromechanical device 104.

FIG. 7 illustrates an exploded view of a pedal arm assembly 600 according to certain embodiments of this disclosure. The pedal arm assembly 600 includes a stepper motor 700. The stepper motor 700 may be any suitable stepper motor. The stepper motor 700 may include multiple coils organized in groups referred to as phases. Each phase may be energized in sequence to rotate the motor one step at a time. The control system may use the stepper motor 700 to move the position of the pedal on the radially-adjustable coupling.

The stepper motor 700 includes a barrel and pin inserted through a hole in a motor mount 702. A shaft coupler 704 and a bearing 706 include through holes that receive an end of a first end lead screw 708. The lead screw 708 is disposed in a lower cavity of a pedal arm 712. The pin of the electric motor may be inserted in the through holes of the shaft coupler 704 and the bearing 706 to secure to the first end of the lead screw 708. The motor mount 702 may be secured to a frame of the pedal arm 712. Another bearing 706 may be disposed on another end of the lead screw 708. An electric slip ring 710 may be disposed on the pedal arm 712.

A linear rail 714 is disposed in and secured to an upper cavity of the pedal arm 712. The linear rail 714 may be used to move the pedal to different positions as described further below. A number of linear bearing blocks 716 are disposed onto a top rib and a bottom rib of the linear rail 714 such that the bearing blocks 716 can slide on the ribs. A spindle carriage 718 is secured to each of the bearing blocks 716. A support bearing 720 is used to provide support. The lead screw 708 may be inserted in through hole 722 of the spindle carriage 718. A spindle 724 may be secured at an end of the through hole 722 to house an end of the lead screw 708. A spindle 724 may be attached to a hole of the spindle carriage 718. When the pedal arm assembly 600 is assembled, the end of the spindle 724 may protrude through a hole of a pedal arm cover 726. When the stepper motor 700 turns on, the lead screw 708 can be rotated, thereby causing the spindle carriage 718 to move radially along the linear rail 714. As a result, the spindle 724 may radially traverse the opening of the pedal arm cover 726 as desired.

FIG. 8 illustrates an exploded view of a drive sub-assembly 602 according to certain embodiments of this disclosure. The drive sub-assembly 602 includes an electric motor 122. The electric motor 122 is partially disposed in a crank bracket housing 800. A side of the electric motor 122 includes a small molded pulley 802 secured to it via a small pulley plate 804 by screws 806. Also disposed within the crank bracket housing 800 is a timing belt 808 and a large molded pulley 810. The timing belt 808 may include teeth on an interior side that engage with teeth on the small molded pulley 802 and the large molded pulley 810 to cause the large molded pulley 810 to rotate when the electric motor 122 operates. The crank bracket housing 800 includes mounted bearing 812 on both sides through which crankshafts 814 of the large molded pulley 810 protrude. The crankshafts 814 may be operatively coupled to the pedal assemblies.

FIG. 9 illustrates an exploded view of a portion of a goniometer 106 according to certain embodiments of this disclosure. The goniometer 106 includes an upper section 900 and a lower section 902. The upper section 900 and the lower section 902 are rotatably coupled via a lower leg side brace 904. A bottom cap 906 may be inserted into a protruded cavity 918 of the lower leg side brace 904. In some embodiments, the bottom cap 906 includes a microcontroller 908. A thrust roller bearing 910 fits over the protruded cavity 918 of the lower leg side brace 904, which is inserted into a cavity 920 of the upper section 900 and secured to the upper section 900 via an attachment, such as a screw 922. Second cavity 924 is located is on a side of the upper section 900 opposite to the side having the cavity 920 with the inserted protruded cavity 918. A radial magnet 912 and a microcontroller (e.g., a printed control board) 914 are disposed in the second cavity 924 and a top cap 916 is placed on top to cover the second cavity 924. The microcontroller 908 and/or the microcontroller 914 may include a network interface card 940 or a radio configured to communicate via a short range wireless protocol (e.g., Bluetooth), a processing device 944, and a memory device 938. Further, either or both of the microcontrollers 908 and 914 may include a magnetic sensing encoder chip that senses the position of the radial magnet 912. The position of the radial magnet 912 may be used to determine an angle of bend or extension 2118, 2218 of the goniometer 106 by the processing device(s) of the microcontrollers 908 and/or 914. The angles of bend/extension 2118, 2218 may be transmitted via the radio to the computing device 102. The lower section 902 defines an opening 932 configured to receive a protruding tab 934 and a spring 930. The spring 930 may be disposed along the opening 932 between the protruding tab 934 and a side cap 926. The side cap 926 may be coupled to the protruding tab 934 through the opening 932. One or more attachments 928 may couple the side cap 926 to the protruding tab 934. The attachment 928 may be a screw, a magnet, or any other desired attachment. The spring 930 can be configured to apply pressure on the side cap 926 to provide limited movement of the side cap 926 relative to the opening 932. The spring 930 may allow for movement of the lower section 902 relative to the upper section 900. The electronic device 106 can include additional and/or fewer components, including in different locations and/or configurations, and is not limited to those illustrated in FIG. 9.

FIG. 10 illustrates a top view of a wristband 108 according to certain embodiments of this disclosure. The wristband 108 includes a strap with a clasp to secure the strap to a wrist of a person. The wristband 108 may include one or more processing devices, memory devices, network interface cards, and so forth. The wristband 108 may include a display 1000 configured to present information measured by the wristband 108. The wristband 108 may include an accelerometer, gyroscope, and/or an altimeter, as discussed above. The wristband 108 may also include a light sensor to detect a heartrate of the user wearing the wristband 108. In some embodiments, the wristband 108 may include a pulse oximeter to measure an amount of oxygen (oxygen saturation) in the blood by sending infrared light into capillaries and measuring how much light is reflected off the gases. The wristband 108 may transmit the measurement data to the computing device 102.

FIG. 11 illustrates an exploded view of a pedal 110 according to certain embodiments of this disclosure. The pedal 110 includes a molded pedal top 1100 disposed on top of a molded pedal top support plate 1102. The molded pedal top 1100 and the molded pedal top support plate 1102 are secured to a molded pedal base plate 1104 via screws, for example. The molded pedal base plate 1104 includes a strain gauge 1106 configured to measure force exerted on the pedal 110. The pedal 110 also includes a molded pedal bottom 1108 where a microcontroller 1110 is disposed. The microcontroller 1110 may include processing devices, memory devices, and/or a network interface card or radio configured to communicate via a short range communication protocol, such as Bluetooth. The strain gauge 1106 is operatively coupled to the microcontroller 1110 and the strain gauge 1106 transmits the measured force to the microcontroller 1110. The microcontroller 1110 transmits the measured force to the computing device 102 and/or the motor controller 120 of the electromechanical device 104. The molded pedal top 1100, the molded pedal top support plate 1102, and the molded pedal base plate 1104 are secured to the molded pedal bottom 1108, which is further secured to a molded pedal bottom cover 1112. The pedal 110 also includes a spindle 1114 that couples with the pedal arm assembly.

FIG. 12 illustrates additional views of the pedal 110 according to certain embodiments of this disclosure. A top view 1200 of the pedal 110 is depicted, a perspective view 1202 of the pedal 110 is depicted, a front view 1204 of the pedal 110 is depicted, and a side view 1206 of the pedal 110 is depicted.

FIGS. 13-29 illustrate different user interfaces of the user portal 118. A user may use the computing device 102, such as a tablet, to execute the user portal 118. In some embodiments, as they perform a pedaling session, the user may hold the tablet in their hands and view the user portal 118. Various user interfaces of the user portal 118 may provide prompts for the users to affirm that they are wearing the goniometer and the wristband, and that their feet are on the pedals.

FIG. 13 illustrates an example user interface 1300 of the user portal 118, the user interface 1300 presenting a treatment plan 1302 for a user according to certain embodiments of this disclosure. The treatment plan 1302 may be received from the computing device 114 executing the clinical portal 126 and/or downloaded from the cloud-based computing system 116. The physician may have generated the treatment plan 1302 using the clinical portal 126 or the trained machine learning model(s) 132 may have generated the treatment plan 1302 for the user. As depicted, the treatment plan 1302 presents the type of procedure (“right knee replacement”) that the patient underwent. Further, the treatment plan 1302 presents a pedaling session including a combination of the modes in which to operate the electromechanical device 104, as well as a respective set period of time for operating each of the modes. For example, the treatment plan 1302 indicates operating the electromechanical device 104 in a passive mode 1304 for 5 minutes, an active-assisted mode 1306 for 5 minutes, an active mode 1308 for 5 minutes, a resistive mode 1310 for 2 minutes, the active mode 1308 again for 3 minutes, and the passive mode 1304 for 2 minutes. The total duration of the pedaling session is 22 minutes and the treatment plan 1302 also specifies that the position of the pedal may be set according to a comfort level of the patient or user. The user interface 1300 also may display the number of sessions scheduled per day and how many sessions have been completed. Prior to the user beginning the pedaling session, the user interface 1300 may be displayed as an introductory user interface.

FIG. 14 illustrates an example user interface 1400 of the user portal 118, the user interface 1400 presenting pedal settings 1402 for a user according to certain embodiments of this disclosure. As depicted, graphical representation of feet are presented on the user interface 1400, as are two sliders including positions which correspond to portions of the feet. For example, a left slider 1404 includes positions L1, L2, L3, L4, and L5. A right slider includes positions R1, R2, R3, R4, and R5. A button 1404 may be slid up or down on the sliders to automatically adjust via the pedal arm assembly the pedal position on the radially-adjustable coupling. The pedal positions may be automatically populated according to the treatment plan but the user has the option to modify them based on comfort level. The changed positions may be stored locally on the computing device 102, sent to the computing device 114 executing the clinical portal 126, and/or sent to the cloud-based computing system 116.

FIG. 15 illustrates an example user interface 1500 of the user portal 118, the user interface 1500 presenting a scale 1502 for measuring discomfort of the user at a beginning of a pedaling session according to certain embodiments of this disclosure. The scale 1502 may provide options ranging from no discomfort (e.g., smiley face), to mild discomfort (e.g., moderate face), to high discomfort (e.g., sad face). This discomfort information may be stored locally on the computing device 102, sent to the computing device 114 executing the clinical portal 126, and/or sent to the cloud-based computing system 116. For example, the user interface 1500 may be configured to receive a user input 1504, such as a pain score, from the user. The user input 1504 (e.g., a first user input) may be provided at or near the beginning of the rehabilitation session, or at any other desired time.

FIG. 16 illustrates an example user interface 1600 of the user portal 118, the user interface is configured to present that the electromechanical device 104 is operating in a passive mode 1602 according to certain embodiments of this disclosure. The user interface 1600 is configured to present which pedaling session 1604 (session 1) is being performed and how many other pedaling sessions are scheduled for the day. The user interface 1600 also is configured to present an amount of time left in the pedaling session 1604 and an amount of time left in the current mode (passive mode). The full lineup of modes in the pedaling session 1604 is displayed in box 1606. While in the passive mode, the computing device controls the electric motor to independently drive the radially-adjustable couplings so the user does not have to exert any force on the pedals but such that their affected body part(s) and/or muscle(s) are enabled to be stretched and warmed up. At any time, if the user so desires, the user may select a stop button 1608, which may cause the electric motor to lock and stop the rotation of the radially-adjustable couplings instantaneously or over a set period of time. A descriptive box 1610 may provide instructions related to the current mode to the user.

FIGS. 17A-D illustrate an example user interface 1700 of the user portal 118, the user interface 1700 is configured to present that the electromechanical device 104 is operating in active-assisted mode 1702 and the user is applying various amounts of force to the pedals according to certain embodiments of this disclosure. Graphical representations 1704 of feet are configured to be presented on the user interface 1700 and the graphical representations may be configured to display the amount of force measured at the pedals. The force sensors (e.g., strain gauge) in the pedal may measure the forces exerted by the user and the microcontroller of the pedal may transmit the force measurements to the computing device 102. Notifications may be configured to be presented when the amount of force is outside of a force threshold 1730 (e.g., either below a range of force threshold 1730 or above the range of force threshold 1730). For example, in FIG. 17A, the right foot includes a notification to apply more force with the right foot because the current force measured at the pedal 110 is below the force threshold 1730.

A virtual tachometer 1706 is also presented that measures the revolutions per time period (e.g., per minute) of the radially-adjustable couplings and displays the current speed at which the user is pedaling. For example, the tachometer 1706 includes areas 1708 (between 0 and 10 revolutions per minute and between 20 and 30 revolutions per minute) that the user should avoid according to their treatment plan. In the depicted example, the treatment plan specifies that the user should maintain the speed at between 10 and 20 revolutions per minute. The electromechanical device 104 transmits the speed to the computing device 102 and the needle 1710 moves in real-time as the user operates the pedals. Notifications are presented near the tachometer 1706, wherein such notifications may indicate that the user should keep the speed above a certain revolutions threshold 1732 (e.g., 10 RPM). If the computing device 102 receives a speed from the electromechanical device 104 and the speed is below the revolutions threshold 1732, the computing device 102 may control the electric motor to drive the radially-adjustable couplings to maintain the revolutions threshold 1732. The computing device 102 may also be made capable of determining the state of the user in a particular exercise comprising the treatment plan, such that if the state is to maintain the revolutions per minute, the notification will be issued, but further, such that if the state is indicative of starting to exercise, ending an exercise, or transitioning between different parts of an exercise, and crossing an otherwise undesirable or forbidden threshold and/or range of revolutions per minute would, in these particular or otherwise similar indictive states, be neither undesirable nor forbidden, and the computing device 102 would, in those instances, not issue a notification. As will readily be appreciated by a person of ordinary skill of the art in light of having read the present disclosure, as used herein, actions described as being performed in real-time include actions performed in near-real-time without departing from the scope and intent of the present disclosure.

FIG. 17B depicts the example user interface 1700 presenting a graphic 1720 for the tachometer 1706 when the speed is below the revolutions threshold 1732. As depicted, a notification is presented that states “Too slow—speed up.” Also, when the pressure exerted at the pedal is below the range of force threshold 1730, the user interface 1700 presents an example graphical representation 1721 of the right foot. A notification may be presented that states, “Push more with your right foot.” FIG. 17C depicts, when the speed is within the desired target revolutions per minute, the example user interface 1700 presenting a graphic 1722 for the tachometer 1706. Also, the user interface 1700 presents, when the pressure exerted at the pedal is within the range of force threshold 1730, an example graphical representation 1724 of the right foot. FIG. 17D depicts, when the speed is above the desired target revolutions per minute, the example user interface 1700 presenting a graphic 1726 for the tachometer 1706. As depicted, a notification is presented that states “Too fast—slow down.” Also, the user interface 1700 presents, when the pressure exerted at the pedal is above the range of force threshold 1730, an example graphical representation 1728 of the right foot. A notification may be presented that states “Push less with your right foot.”

FIG. 18 illustrates an example user interface 1800 of the user portal 118, the user interface 1800 presenting a request 1804 to modify pedal position while the electromechanical device 104 is operating in active-assisted mode 1802 according to certain embodiments of this disclosure. The request 1804 may graphically pop up on a regular interval if specified in the treatment plan. If the user selects the “Adjust Pedals” button 1806, the user portal 118 may present a screen that allows the user to modify the position of the pedals.

FIG. 19 illustrates an example user interface 1900 of the user portal 118, the user interface 1900 presenting a scale 1902 for measuring discomfort of the user at an end of a pedaling session according to certain embodiments of this disclosure. The scale 1902 may provide choices ranging from no discomfort (e.g., smiley face), to mild discomfort (e.g., moderate face), to high discomfort (e.g., sad face); alternatively a non-illustrated version of the scale could be alphabetic (A-to-F), numeric (1-to-10), or in any other form enabling an indication of comfort to be made. As used herein, “discomfort” is simply an approximate opposite of “comfort,” and hence “no discomfort” corresponds approximately to “high comfort,” “mild discomfort” corresponds approximately to “mostly comfortable,” and “high discomfort” corresponds approximately to “very little comfort” or, in some cases, to “no comfort” or “an absence of comfort.” This discomfort information may be stored locally on the computing device 102, sent to the computing device 114 executing the clinical portal 126, and/or sent to the cloud-based computing system 116. For example, the user interface 1900 may be configured to receive a user input 1904, such as a pain score, from the user. The user input 1904 (e.g., a second user input) may be provided at or near the end of the rehabilitation session, or at any other desired time.

In some embodiments, user interface 1900 of the user portal 118 can present an adjustment confirmation control configured to solicit a response regarding the patient's comfort level with the position of the body part or the force exerted by the body part. The comfort level may be indicated by a binary selection (e.g., comfortable or not comfortable). In some embodiments, the comfort level may be an analog value that may be indicated numerically or with an analog input control, such as a slider or a rotary knob. In some embodiments, the comfort level may be indicated by one of several different comfort level values, such as an integer number from 1 to 5. In some embodiments, the comfort level may be indicated using controls for the patient to maintain a setting or for the patient to change the setting. More specifically, the control for the patient to change the setting may provide for the patient to change the setting in either of two or more directions. For example, the controls may allow the patient to maintain the value of a setting, to increase the value of the setting, or to decrease the value of the setting.

FIG. 20 illustrates, according to certain embodiments of this disclosure, an example user interface 2000 of the user portal 118. The user interface 2000 enables the user to capture an image of the body part under rehabilitation. For example, via an image capture device 616, an image capture zone 2002 is presented on the user interface 2000. The dotted lines 2004 may populate to show a rough outline of the leg, for example, with a circle to indicate where the user's kneecap (patella) should be in the image. This enables the patient or user to line up his or her leg/knee, or any other desired body part, for the image. The user may select a camera icon 2006 to capture the image. If the user is satisfied with the image, the user can select a save button 2008 to store the image on the computing device 102 and/or in the cloud-based computing system 116. Also, the image may be transmitted to the computing device 114 executing the clinical portal 126.

FIGS. 21A-D illustrate an example user interface 2100 of the user portal 118. The user interface 2100 presents angles 2102 of an extension 2222 or a bend 2122 of a lower leg relative to an upper leg according to certain embodiments of this disclosure. As depicted in FIG. 21A, the user interface 2100 presents a graphical animation 2104 of the user's leg extending in real-time. The knee angle in the graphical animation 2104 may match the angle 2102 presented on the user interface 2100, for example, an angle of bend 2118 or an angle of extension 222. The computing device 102 may receive the angles of extension 2218 from the electronic device 106, and such device may be a goniometer or any other desired device that is worn by the user 2108 during an extension session and/or a pedaling session. To that end, although the graphical animation 2104 depicts the user 2108 extending his or her leg during an extension session, it should be understood that the user portal 118 may be configured to display the angles 2102 in real-time as the user 2108 operates the pedals 110 of the electromechanical device 104 in real-time.

FIG. 21B illustrates the user interface 2100 with the graphical animation 2104 as the lower leg is extended farther away from the upper leg, and the angle 2102 changed from 84 to 60 degrees of extension. FIG. 21C illustrates the user interface 2100 with the graphical animation 2104 as the lower leg is extended even farther away from the upper leg. The computing device 102 may record the lowest angle to which the user 2108 is able to extend his or her leg as measured by the electronic device 106, such as the goniometer. The angle 2102 may be sent to the computing device 114 and that lowest angle may be presented on the clinical portal 126 as an extension statistic for that extension session. Further, a bar 2110 may be presented and the bar 2110 may fill from left to right over a set amount of time. A notification may indicate that the patient or user 2108 should push down on his or her knee over a set amount of time or until a set amount of time, minimum or maximum, has elapsed. The user interface 2100 in FIG. 21D is similar to FIG. 21C but it presents the angle of bend 2118, measured by the electronic device 106, such as the goniometer, as the user 2108 retracts his or her lower leg closer to his or her upper leg (e.g., during the bend 2122). As depicted, the graphical animation 2104 presented on the user interface 2100 in real-time depicts the angle of the knee matching the angle 2102. The computing device 102 may record the highest angle that the user 2108 is able to bend his or her leg as measured by the electronic device, such as the goniometer 106. That angle 2102 may be sent to the computing device 114 and that highest angle may be presented on the clinical portal 126 as a bend statistic for that bend session.

FIG. 22 illustrates an example user interface 2200 of the user portal 118. The user interface 2200 presents a progress report 2202 for a user extending the lower leg away from the upper leg according to certain embodiments of this disclosure. The user interface 2200 presents a graph 2204 wherein the degrees of extension are on a y-axis and the days after surgery are on an x-axis. The angles depicted in the graph 2204 are the smallest angles achieved each day. The user interface 2200 also depicts the smallest angle the user has achieved for extension and indicates an percentage of improvement (83%) in extension since beginning the treatment plan. The user interface 2200 also indicates how many degrees are left before reaching a target extension angle. The user interface 2000 may also display a summary box 2206. The summary box 2206 may include information, such as the amount of strength improvement in the legs, the amount of strength improvement needed to satisfy a target strength goal, or any other desired information. The summary box 2206 may include information, such as a score based on the target values, performance of the user 2108, or any other desired information. For example, the target value may be one or more of a target heartrate, a target force that the user 2108 is to exert on the one or more pedals 110, a target range of motion of the first and/or second body parts 2112, 2114, a target position of the one or more pedals 110 on the radially-adjustable couplings 124, a target angle of flex at the joint 2116, a target number of bends 2122 or extensions 2222, a target number of steps, a target temperature, or any other desired target value.

FIG. 23 illustrates an example user interface 2300 of the user portal 118. The user interface 2300 presents a progress screen 2302 for a user bending the lower leg toward the upper leg according to certain embodiments of this disclosure. The user interface 2300 presents a graph 2304 with the degrees of bend on a y-axis and the days after surgery on the x-axis. The angles depicted in the graph 2304 are the highest angles of bend achieved each day. The user interface 2200 also depicts the smallest angle the user has achieved for bending and indicates a percentage of improvement (95%) in extension since beginning the treatment plan. The user interface 2200 also indicates how many degrees are left before reaching a target bend angle.

FIG. 24 illustrates an example user interface 2400 of the user portal 118. The user interface 2400 presents a progress screen 2402 for a discomfort level of the user according to certain embodiments of this disclosure. The user interface 2400 presents a graph 2404 with the discomfort level on a y-axis and the days after surgery on the x-axis. The user interface 2400 also depicts the lowest discomfort level the user has reported and a notification indicating a measurement of the reduction in discomfort that the user has experienced throughout the treatment plan.

FIG. 25 illustrates, according to certain embodiments of this disclosure, an example user interface 2500 of the user portal 118. The user interface presents a progress screen 2502 for a strength of a body part. The user interface 2500 presents a graph 2504 with the pounds of force exerted by the patient for both the left leg and the right leg on a y-axis and the days after surgery on the x-axis. The graph 2504 may show an average for left and right leg for a current session. For the number of sessions a user does each day, the average pounds of force for those sessions may be displayed for prior days as well. The user interface 2500 also depicts graphical representations 2506 of the left and right feet and a maximum amount of force the user has exerted for the left and right leg. The maximum amount (e.g., in pounds) of force depicted may be computed when the electromechanical device is operating in the active mode. The user may select to see statistics for prior days and the average level of active sessions for the current day may be presented as well. The user interface 2500 indicates the amount of strength improvement in the legs and the amount of strength improvement needed to satisfy a target strength goal, for example, in the summary box 2508.

FIG. 26 illustrates, according to certain embodiments of this disclosure, an example user interface 2600 of the user portal 118. The user interface presents a progress screen 2602 for a number of steps of the user. The user interface 2600 presents a graph 2604 with the number of steps taken by the user on a y-axis and the days after surgery on the x-axis. The user interface 2500 also depicts the highest number of steps the user has taken among all of the days in the treatment plan, the amount the user has improved in steps per day since starting the treatment plan, and the number of additional steps needed to meet a target step goal. The user may select to view prior days to see the total number of steps they have taken per day.

FIG. 27 illustrates, according to certain embodiments of this disclosure, an example user interface 2700 of the user portal 118. The user interface 2700 presents that the electromechanical device 104 is operating in a manual mode 2702. During the manual mode 2702, the user may set the speed, resistance, time to exercise, position of pedals, etc. In such a configuration, the control system for the electromechanical device 104 may not provide any assistance to operation of the electromechanical device 104. When the user selects any of the modes in the box 2704, a pedaling session may begin. Further, when the user selects button 2706, the user portal 118 may return to the user interface 1300 depicted in FIG. 13.

FIG. 28 illustrates, according to certain embodiments of this disclosure, an example user interface 2800 of the user portal 118. The user interface 2800 presents an option 2802 to modify a speed of the electromechanical device 104 operating in the passive mode 2804. The user may slide button 2806 to adjust the speed as desired during the passive mode 2804 where the electric motor is providing the driving force of the radially-adjustable couplings.

FIG. 29 illustrates, according to certain embodiments of this disclosure, an example user interface 2900 of the user portal 118. The user interface 2900 presents an option 2902 to modify a minimum speed of the electromechanical device 104 operating in the active-assisted mode 2904. The user may slide button 2906 to adjust the minimum speed that the user should maintain before the electric motor begins providing driving force.

FIG. 30 illustrates, according to certain embodiments of this disclosure, an example user interface 3000 of the clinical portal 126, wherein the user interface 3000 presents various options available to the clinician/physician. The clinical portal 126 may retrieve a list of patients for a particular physician who logs into the clinical portal 126. The list of patients may be stored on the computing device 114 or retrieved from the cloud-based computing system 116. A first option 3002 may enable the clinician to generate treatment plans for one or more of the patients, as described above. A second option 3004 may enable the clinician to view the number of sessions that each of the patients have completed in 24 hours. This may enable the clinician to determine whether the patients are keeping up with the treatment plan and whether to send notifications to those patients not completing the sessions. A third option 3006 may enable the clinician to view the patients who have poor extension (e.g., angle of extension above a target extension for a particular stage in the treatment plan). A fourth option 3008 may enable the clinician to view the patients who have poor flexion (e.g., angle of bend below a target bend for a particular stage in the treatment plan). A fifth option 3010 may enable the clinician to view the patients reporting high pain levels. Regarding any of the options, the clinician can contact the user and inquire as to the status of their lack of participation, or degree of extension, flexion and pain level etc. The clinical portal 126 provides the benefit of direct monitoring of the patients progress by the clinician, which may enable faster and more effective recoveries.

Further, the clinical portal may include an option to control aspects of operating the electromechanical device 104. For example, while the user is engaged in a pedaling session or when the user is not engaged in the pedaling session, the clinician may use the clinical portal 126 to adjust a position of a pedal 110 based on angles of extension/bend received from the computing device 102 and/or the goniometer 106 in real-time. In response to determining an amount of force exerted by the user exceeds a target force threshold, such as the force threshold 1730, the clinical portal 126 may enable the clinician to adjust the amount of resistance provided by the electric motor 122. The clinical portal 126 may enable the clinician to adjust the speed of the electric motor 122, and so forth. The user interfaces can include additional and/or fewer components and are not limited to those illustrated in FIGS. 13-30.

FIG. 31 illustrates, in accordance with one or more aspects of the present disclosure, example computer system 3100, which can perform any one or more of the methods described herein. In one example, computer system 3100 may correspond to the computing device 102 (e.g., user computing device), the computing device 114 (e.g., clinician computing device), one or more servers of the cloud-based computing system 116, the training engine 130, the servers 128, the motor controller 120, the pedals 110, the goniometer 106, and/or the wristband 108 of FIG. 1. The computer system 3100 may be capable of executing the user portal 118 and/or the clinical portal 126 of FIG. 1. The computer system 3100 may be connected (e.g., networked) to other computer systems in a LAN, an intranet, an extranet, or the Internet. The computer system 3100 may operate in the capacity of a server in a client-server network environment. The computer system 3100 may comprise a personal computer (PC), a tablet computer, a motor controller, a goniometer, a wearable device (e.g., wristband 108), a set-top box (STB), a personal Digital Assistant (PDA), a mobile phone, a camera, a video camera, an Internet of Things (IoT) sensor or device, or any device capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that device. Further, while only a single computer system is illustrated, the term “computer” shall also be taken to include any collection of computers that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methods discussed herein.

The computer system 3100 comprises a processing device 3102, a main memory 3104 (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM) such as synchronous DRAM (SDRAM)), a static memory 3106 (e.g., flash memory, static random access memory (SRAM)), and a data storage device 3108, which communicate with each other via a bus 3110.

Processing device 3102 represents one or more general-purpose processing devices such as a microprocessor, central processing unit, or the like. More particularly, the processing device 3102 may comprise a complex instruction set computing (CISC) microprocessor, reduced instruction set computing (RISC) microprocessor, very long instruction word (VLIW) microprocessor, or a processor implementing other instruction sets or processors implementing a combination of instruction sets. The processing device 3102 may also comprise one or more special-purpose processing devices such as an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), network processor, or the like. The processing device 3102 is configured to execute instructions for performing any of the operations and steps discussed herein.

The computer system 3100 may further comprise a network interface device (NID) 3112. The computer system 3100 also may comprise a video display 3114 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)), one or more input devices 3116 (e.g., a keyboard and/or a mouse), and one or more speakers 3118 (e.g., a speaker). In one illustrative example, the video display 3114 and the input device(s) 3116 may be combined into a single component or device (e.g., an LCD touch screen).

The data storage device 3108 may comprise a computer-readable storage medium 3120 on which the instructions 3122 (e.g., implementing control system, user portal, clinical portal, and/or any functions performed by any device and/or component depicted in the FIGURES and described herein) embodying any one or more of the methodologies or functions described herein are stored. The instructions 3122 may also reside, completely or at least partially, within the main memory 3104 and/or within the processing device 3102 during execution thereof by the computer system 3100. As such, the main memory 3104 and the processing device 3102 also constitute computer-readable media. The instructions 3122 may further be transmitted or received over a network via the network interface device 3112.

While the computer-readable storage medium 3120 is shown in the illustrative examples to be a single medium, the term “computer-readable storage medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions. The term “computer-readable storage medium” shall also be taken to include any medium capable of storing, encoding or carrying a set of instructions for execution by the machine and which cause the machine to perform any one or more of the methodologies of the present disclosure. The term “computer-readable storage medium” shall accordingly be taken to include, but not be limited to, solid-state memories, optical media, and magnetic media. The computer system 3100 can include additional and/or fewer components and is not limited to those illustrated in FIG. 31.

In one aspect, a system for rehabilitation may include a monitoring device comprising a memory device 938 storing instructions 3122 and a network interface card 940, wherein the monitoring device is configured to detect information from a user 2108. The monitoring device may be a goniometer 106 coupled to the user 2108, a wristband 108 coupled to the user 2108, or a force sensor 942 coupled to a pedal of the electromechanical device 104. The system for rehabilitation further includes one or more processing devices 944 operatively coupled to the monitoring device. The one or more processing devices 944 can be configured to execute the instructions 3122 to receive configuration information specified in a treatment plan 1302 for rehabilitating a body part of the user 2108. For example, the body part of the user 2108 can be a first body part 2112 (e.g., a lower leg or a forearm), a second body part 2114 (e.g., an upper leg or an upper arm), a joint 2116 (e.g., a knee or an elbow), or any other desired body part or combination thereof. The configuration information may be received from a server 128 that received the configuration information presented on the computing device 102 from a clinical portal 126. The server 128 may include one or more processing devices, memory devices, data storage, and/or network interface cards. The one or more processing devices 944 can be configured to execute the instructions 3122 to receive the information from the monitoring device. The one or more processing devices 944 can be further configured to execute the instructions 3122 to transmit the configuration information and the information to a computing device 102 controlling an electromechanical device 104. One or more network interface cards 940 can be used for transmitting the configuration information and the information to the computing device 102.

The electromechanical device 104 may further comprise one or more pedals 110 rotatably coupled to one or more radially-adjustable couplings 124. The electromechanical device 104 may further comprise an electric motor 122 coupled to the one or more pedals 110 via the one or more radially-adjustable couplings 124. The electromechanical device 104 may further comprise a control system comprising one or more processing devices 944 operatively coupled to the electric motor 122. Responsive to a first trigger condition occurring, the one or more processing devices 944 can be configured to control the electric motor 122 to operate in a passive mode 1304 For example, the one or more processing devices 944 can execute instructions for the electric motor 122 to independently drive the one or more radially-adjustable couplings 124. Responsive to a second trigger condition occurring, for example, by measuring revolutions per time period of the one or more radially-adjustable couplings 124, such that when the measured revolutions per time period satisfy a threshold condition, the satisfaction of that condition can cause the electric motor 122 to drive the one or more radially-adjustable couplings 124. The one or more processing devices 944 may also be configured to control the electric motor 122 to operate in an active-assisted mode 1306. Responsive to a third trigger condition occurring, by providing resistance to rotation of the one or more radially-adjustable couplings 124, the one or more processing devices 944 may be configured to control the electric motor 122 to operate in a resistive mode 1310.

During an exercise session, the information may include one or more angles of a range of motion of the body part. The angles may include angles of extension 2222 and/or angles of bend 2122 of the body part detected by the monitoring device. The exercise session can include one or more particular exercises comprising the treatment plan 1302. The threshold condition may comprise a diameter (or radius, or other measurement) of the range of motion for the body part. The threshold condition may comprise a predetermined angle of a range of motion of the body part. Responsive to a difference between the angle and the predetermined angle, the one or more processing devices 944 may be configured to increase or decrease the angle by adjusting a position of the pedals 110. For example, if the difference is greater than, equal to, or less than a predetermined measurement (e.g., a difference measured), the processing device 944 may increase or decrease the diameter of the pedals 110 to adjust the movement of the body part(s) of the user 2108. As the user 2108 operates at least one of the pedals 110, the diameter may be transited by the body part of the user 2108. In other words, if a user is not following his or her treatment plan while operating the electromechanical device 104, the diameter of the pedals 110 may be changed during the exercise session to avoid risk of injury to the body part of the user 2108 and/or to enhance the rehabilitation results of the exercise session.

For respective periods of time during an exercise session based on the treatment plan 1302 for the user 2108 operating the electromechanical device 104, the electric motor 122 may operate in each of the passive mode 1304, the active-assisted mode 1306, and the resistive mode 1310. The first trigger condition, the second trigger condition, and the third trigger condition may be set based on the treatment plan 1302. The treatment plan 1302 can be generated by one or more machine learning models trained, based on input related to at least one of a procedure the user 2108 underwent or an attribute of the user 2108, to output the treatment plan 1302. The attribute may be a measurable characteristic of the user 2108. While operating in the passive mode 1304, the one or more processing devices 944 can control the electric motor 122 to independently drive the one or more radially-adjustable couplings 124 at a controlled speed specified in the treatment plan 1302 for the user 2108 operating the electromechanical device 104.

The one or more processing devices 944 may be further configured to receive, from the monitoring device, a value of a vital sign of the user 2108 (e.g., beats per minute of a heartrate, systolic and diastolic measurements of blood pressure, millimeters of mercury (mm Hg) of an oxygen level, degrees of temperature, etc.) as the user 2108 may operate the electromechanical device 104. Responsive to determining that the value of the vital sign exceeds a target value of the vital sign, the one or more processing devices 944 may control the electric motor 122 to reduce the resistance provided to rotate the one or more radially-adjustable couplings 124. Responsive to determining that the value of the vital sign falls below or is less than the target value of the vital sign, the one or more processing devices 944 may control the electric motor 122 to increase the resistance provided to rotate the one or more radially-adjustable couplings 124. The target value can be a target heartrate, a target blood pressure, a target oxygen level, a target temperature, or any other desired target value for a vital sign of the user 2108. The one or more processing devices 944 may be further configured to transmit the information to a second computing device 114 to cause the second computing device 114 to present the information on a user interface of a clinical portal 126. The one or more processing devices 944 can transmit the information via the one or more network interface cards 940. The transmitting the information to the computing device 102 may cause the computing device 102 to present a range of motion of the body part in a graphical animation 2104 of the body part moving in real-time.

The one or more processing devices 944 may be further configured to present, on a user interface 1300, the graphical animation 2104 of the body part as the user 2108 operates the electromechanical device 104. The graphical animation 2104 can include a plurality of measurements. The plurality of measurements can include a plurality of measurements of revolutions per time period of the one or more radially-adjustable couplings 124, a plurality of measurements of force on the one or more pedals 110, or any other desired measurement. The one or more processing devices 944 may be further configured to store a lowest value or a highest value of the plurality of measurements as a statistic or a plurality of statistics (e.g., speed, revolutions per minute, positions of pedals, forces on the pedals, vital signs, numbers of steps taken by user, ranges of motion, etc.) for the exercise session. The plurality of statistics can be stored for a plurality of exercise sessions specified by the treatment plan 1302. The one or more processing devices 944 may be further configured to present progress of the plurality of exercise sessions throughout the treatment plan 1302 via a graphical element (e.g., line graph, bar chart, etc.) on the user interface presenting the plurality of statistics.

The one or more processing devices 944 may be further configured to receive, from the monitoring device, a number of steps taken by the user 2108 over a certain time period. The one or more processing devices 944 may be further configured to determine if the number of steps satisfies a step threshold of the treatment plan 1302 for the user 2108. The one or more processing devices 944 may be further configured to present, on a user interface, the number of steps taken by the user 2108 and an indication of whether the number of steps satisfies the step threshold. The one or more processing devices 944 may be further configured to receive one or more measurements of force exerted by the user 2108 on the one or more pedals 110 during an exercise session. The measurements of force can be received from one or more force sensors 942 operatively coupled to one or more pedals 110 of the electromechanical device 104. Based on the one or more measurements of force, the one or more processing devices 944 may be configured to determine whether the user 2108 has disengaged from the electromechanical device 104. The one or more processing devices 944 may be further configured to lock an electric motor 122 in response to determining that the user 2108 has disengaged from the electromechanical device 104. Locking the electric motor 122 may stop the one or more pedals 110 from moving. The one or more processing devices 944 may be further configured to receive, from one or more force sensors 942 operatively coupled to one or more pedals 110 of the electromechanical device 104, one or more measurements of force exerted during an exercise session by the user 2108 on the one or more pedals 110. While the user 2108 engages the one or more pedals 110 during the exercise session, the one or more processing devices 944 may be further configured to present on a user interface 1300 the respective one or more measurements of force on each of the one or more pedals 110. For example, the respective one or more measurements of force can be presented on a separate respective graphical element of the user interface 1300.

When the one or more measurements of force satisfy a pressure threshold, the one or more processing devices 944 may be configured to present a notification, such as a first notification, on the user interface 1300. When the one or more measurements do not satisfy the pressure threshold, the one or more processing devices 944 may be further configured to present a notification, such as a second notification, on the user interface 1300. If the one or more measurements satisfy and/or do not satisfy the pressure threshold, one or neither notification may be presented or both notifications may be presented. For example, if, during an exercise session, the one or more measurements satisfy the pressure threshold at a first time, the first notification may be presented on the user interface 1300. If, during the exercise session, the one or more measurements do not satisfy the pressure threshold at a second time, the second notification may be presented to the user interface 1300. If either of these conditions is not met, the respective notification may not be presented on the user interface 1300.

The one or more processing devices 944 may be further configured, based on the one or more measurements of force, to provide an indicator to the user 2108. The indicator may comprise at least one of following: (1) providing haptic feedback in the one or more pedals 110, the one or more handles, or a seat; (2) providing visual feedback on the user interface 1300; (3) providing audio feedback via an audio subsystem of the electromechanical device 104; and/or (4) illuminating a warning light on the electromechanical device 104.

In another aspect, a system for rehabilitation may include a monitoring device comprising a memory device 938 storing instructions 3122 and a network interface card 940, wherein the monitoring device is configured to detect a range of motion, such as the angles of extension and/or bend of a body part of a user 2108. The system for rehabilitation further includes one or more processing devices 944 operatively coupled to the monitoring device. The one or more processing devices 944 can be configured to execute the instructions 3122 to receive configuration information specified in a treatment plan 1302 for rehabilitating the body part of the user 2108. The one or more processing devices 944 can be configured to execute the instructions 3122 to receive configuration information specified in a treatment plan 1302 for receiving the information, such as the angles of extension and/or bend of a user, from the monitoring device. The one or more processing devices 944 can be further configured to execute the instructions 3122 to transmit the configuration information and the information, such as the angles, to a computing device 102 controlling an electromechanical device 104, via the network interface card 940. The transmitting the information, such as the angles, to the computing device 102 can cause the computing device 102 to present the information in a graphical animation 2104 of the body part moving in real-time.

The information may comprise at least one of an angle of extension 2222 of the body part and an angle of bend 2122 of the body part. The information may be received while the user 2108 is engaging one or more pedals 110 of the electromechanical device 104. Based on the any of the information satisfying a threshold condition, the transmitting the information to the computing device 102 may cause the computing device 102 to adjust a position of a pedal coupled to a radially-adjustable coupling of the electromechanical device 104. For example, if a value of the angle of extension 2222 (e.g., 45 degrees) is less than a predetermined value of the threshold condition (e.g., 50 degrees), the computing device 102 may adjust a position of the pedal to cause the body part to extend at greater angle (e.g., greater than 45 degrees but less than or equal to 50 degrees). If a value of the angle of extension 2222 (e.g., 55 degrees) is greater than a predetermined value of the threshold condition (e.g., 50 degrees), the computing device 102 may adjust a position of the pedal to cause the body part to extend at smaller angle (e.g., less than 55 degrees but greater than or equal to 50 degrees).

In yet another aspect, a system for rehabilitation may include a monitoring device comprising a memory device 938 storing instructions 3122 and a network interface card 940, wherein the monitoring device is configured to detect a range of motion of a body part of a user 2108. The system for rehabilitation may further include an electromechanical device 104 comprising one or more pedals 110 coupled to one or more radially-adjustable couplings 124. The system for rehabilitation may further include an electric motor 122 coupled to the one or more pedals 110 via the one or more radially-adjustable couplings 124. The system for rehabilitation may further include a control system comprising one or more processing devices 944 operatively coupled to both the monitoring device and the electric motor 122. The one or more processing devices 944 can be configured to receive configuration information for an exercise session, set a resistance parameter and a maximum pedal force parameter based on the configuration information for the exercise session, and receive the range of motion from the monitoring device. The one or more processing devices 944 can be further configured to transmit the configuration information and the range of motion to a computing device 102 controlling the electromechanical device 104, via the network interface card 940. The one or more processing devices 944 can have one or more network interface cards 940 to transmit the configuration information and the range of motion to a computing device 102. The one or more processing devices 944 can be further configured to measure force applied to pedals 110 of the electromechanical device 104 as the user 2108 pedals 110 the electromechanical device 104. Based on the resistance parameter, the electric motor 122 can provide resistance during the exercise session. The one or more processing devices 944 can be further configured to determine whether the measured force exceeds the maximum pedal force parameter. During the exercise session and responsive to determining that the measured force exceeds the maximum pedal force parameter, the one or more processing devices 944 can be further configured to reduce the resistance parameter so that the electric motor 122 applies less resistance to maintain a revolutions per time period threshold. During the exercise session and responsive to determining that the measured force is less than the maximum pedal force parameter, the one or more processing devices 944 can be further configured to increase the resistance parameter so that the electric motor 122 applies more resistance to maintain the revolutions per time period threshold.

Clause 1. A system for rehabilitation, comprising:

a monitoring device comprising a memory device storing instructions and a network interface card, wherein the monitoring device is configured to detect information from a user; and

one or more processing devices operatively coupled to the monitoring device, wherein the one or more processing devices are configured to execute the instructions to:

-   -   receive configuration information specified in a treatment plan         for rehabilitating a body part of the user;     -   receive the information from the monitoring device; and     -   transmit the configuration information and the information to a         computing device controlling an electromechanical device, via         the network interface card.

Clause 2. The system of any preceding clause, wherein the electromechanical device further comprises:

one or more pedals rotatably coupled to one or more radially-adjustable couplings;

an electric motor coupled to the one or more pedals via the one or more radially-adjustable couplings; and

a control system comprising one or more processing devices operatively coupled to the electric motor, wherein the one or more processing devices are configured to:

-   -   responsive to a first trigger condition occurring, independently         drive the one or more radially-adjustable couplings to control         the electric motor to operate in a passive mode;     -   responsive to a second trigger condition occurring:         -   measure revolutions per time period of the one or more             radially-adjustable couplings; and         -   when the measured revolutions per time period satisfy a             threshold condition, cause the electric motor to drive the             one or more radially-adjustable couplings to operate the             electric motor in an active-assisted mode; and

responsive to a third trigger condition occurring, to control the electric motor to operate in a resistive mode, provide resistance to rotation of the one or more radially-adjustable couplings.

Clause 3. The system of any preceding clause, wherein during an exercise session, the information includes an angle of a range of motion of the body part detected by the monitoring device;

wherein the threshold condition comprises a predetermined angle of the range of motion of the body part; and

responsive to determining a difference between the angle and the predetermined angle, the one or more processing devices are configured to increase or decrease the angle.

Clause 4. The system of any preceding clause, wherein, during an exercise session based on the treatment plan for the user operating the electromechanical device, the electric motor operates for respective periods of time in each of the passive mode, the active-assisted mode, and the resistive mode.

Clause 5. The system of any preceding clause, wherein the first trigger condition, the second trigger condition, and the third trigger condition are set based on the treatment plan, wherein the treatment plan is generated based on input related to at least one of a procedure the user underwent or an attribute of the user by one or more machine learning models trained to output the treatment plan.

Clause 6. The system of any preceding clause, while operating in the passive mode, the one or more processing devices are configured to control the electric motor to independently drive the one or more radially-adjustable couplings at a controlled speed specified in the treatment plan for the user operating the electromechanical device.

Clause 7. The system of any preceding clause, wherein the one or more processing devices are further configured to:

receive, from the monitoring device, a value of a vital sign of the user as the user operates the electromechanical device; and

responsive to determining that the value exceeds a target value of the vital sign, to rotate the one or more radially-adjustable couplings, control the electric motor to reduce the resistance provided.

Clause 8. The system of any preceding clause, wherein, to cause the second computing device to present the information on a user interface of a clinical portal, the one or more processing devices are further configured to transmit, via the network interface card, the information to a second computing device.

Clause 9. The system of any preceding clause, wherein the transmitting the information to the computing device causes the computing device to present a range of motion of the body part in a graphical animation of the body part moving in real-time.

Clause 10. The system of any preceding clause, wherein the one or more processing devices are further configured to:

present, on a user interface, a graphical animation of the body part as the user operates the electromechanical device, wherein the graphical animation includes a plurality of measurements;

store a lowest value or a highest value of the plurality of measurements as a statistic for an exercise session, wherein a plurality of statistics is stored for a plurality of exercise sessions specified by the treatment plan; and

present progress via a graphical element presenting the plurality of statistics on the user interface of the plurality of exercise sessions throughout the treatment plan.

Clause 11. The system of any preceding clause, wherein the one or more processing devices are further configured to:

receive, from the monitoring device, an number of steps taken by the user over a certain time period;

determine if the number of steps satisfies a step threshold of the treatment plan for the user; and

present, on a user interface, the number of steps taken by the user and an indication of whether the number of steps satisfies the step threshold.

Clause 12. The system of any preceding clause, wherein the one or more processing devices are further configured to:

receive, from one or more force sensors operatively coupled to one or more pedals of the electromechanical device, one or more measurements of force exerted by the user during an exercise session on the one or more pedals;

based on the one or more measurements of force, determine whether the user has disengaged from the electromechanical device; and

responsive to determining that the user has disengaged from the electromechanical device, lock an electric motor to stop the one or more pedals from moving.

Clause 13. The system of any preceding clause, wherein the one or more processing devices are further configured to:

receive, from one or more force sensors operatively coupled to one or more pedals of the electromechanical device, one or more measurements of force exerted by the user on the one or more pedals during an exercise session; and

present, on a separate respective graphical element of a user interface, while the user engages the one or more pedals during the exercise session, the respective one or more measurements of force on each of the one or more pedals.

Clause 14. The system of any preceding clause, wherein the one or more processing devices are further configured to present a first notification on the user interface when the one or more measurements of force satisfy a pressure threshold and present a second notification on the user interface when the one or more measurements do not satisfy the pressure threshold.

Clause 15. The system of any preceding clause, wherein the one or more processing devices are further configured to provide an indicator to the user based on the one or more measurements of force, wherein the indicator comprises at least one of (1) providing haptic feedback in the one or more pedals, one or more handles, or a seat, (2) providing visual feedback on the user interface, (3) providing audio feedback via an audio subsystem of the electromechanical device, and (4) illuminating a warning light on the electromechanical device.

Clause 16. The system of any preceding clause, wherein the configuration information is received from a server that received the configuration information presented on the computing device from a clinical portal.

Clause 17. The system of any preceding clause, wherein the monitoring device is a goniometer coupled to the user, a wristband coupled to the user, or a force sensor coupled to a pedal of the electromechanical device.

Clause 18. A system for rehabilitation, comprising:

a monitoring device comprising a memory device storing instructions and a network interface card, wherein the monitoring device is configured to detect information from a body part of a user; and

one or more processing devices operatively coupled to the monitoring device, wherein the one or more processing devices are configured to execute the instructions to:

-   -   receive configuration information specified in a treatment plan         for rehabilitating the body part;     -   receive the information from the monitoring device; and     -   transmit, via the network interface card, the configuration         information and the information to a computing device         controlling an electromechanical device, wherein the         transmitting the information to the computing device causes the         computing device to present the information in a graphical         animation of the body part moving in real-time.

Clause 19. The system of any preceding clause, wherein the information comprises at least one of an angle of extension of the body part and an angle of bend of the body part; and wherein the information is received while the user is engaging one or more pedals of the electromechanical device.

Clause 20. The system of any preceding clause, wherein, based on any of the information satisfying a threshold condition, the transmitting the information to the computing device causes the computing device to adjust a position of a pedal coupled to a radially-adjustable coupling of the electromechanical device.

Clause 21. A system for rehabilitation, comprising:

a monitoring device comprising a memory device storing instructions and a network interface card, wherein the monitoring device is configured to detect a range of motion of a body part of a user;

an electromechanical device comprising one or more pedals coupled to one or more radially-adjustable couplings;

an electric motor coupled to the one or more pedals via the one or more radially-adjustable couplings;

a control system comprising one or more processing devices operatively coupled to both the monitoring device and the electric motor, wherein the one or more processing devices are configured to:

-   -   receive configuration information for an exercise session;     -   based on the configuration information for the exercise session,         set a resistance parameter and a maximum pedal force parameter;     -   receive the range of motion from the monitoring device;     -   transmit, via the network interface card, the configuration         information and the range of motion to a computing device         controlling the electromechanical device; and     -   measure force applied to pedals of the electromechanical device         as a user pedals the electromechanical device, wherein, based on         the resistance parameter, the electric motor provides resistance         during the exercise session.

Clause 22. The system of any preceding clause, wherein the one or more processing devices are further configured to:

determine whether the measured force exceeds the maximum pedal force parameter; and

responsive to determining that the measured force exceeds the maximum pedal force parameter, reduce the resistance parameter so the electric motor applies less resistance during the exercise session to maintain a revolutions per time period threshold.

Clause 23. The system of any preceding clause, wherein the one or more processing devices are further configured to:

determine whether the measured force is less than the maximum pedal force parameter; and

responsive to determining that the measured force is less than the maximum pedal force parameter, increase the resistance parameter so the electric motor applies greater resistance during the exercise session to maintain a revolutions per time period threshold.

No part of the description in this application should be read as implying that any particular element, step, or function is an essential element that must be included in the claim scope. The scope of patented subject matter is defined only by the claims. Moreover, none of the claims is intended to invoke 35 U.S.C. § 112(f) unless the exact words “means for” are followed by a participle.

The foregoing description, for purposes of explanation, use specific nomenclature to provide a thorough understanding of the described embodiments. However, it should be apparent to one skilled in the art that the specific details are not required in order to practice the described embodiments. Thus, the foregoing descriptions of specific embodiments are presented for purposes of illustration and description. They are not intended to be exhaustive or to limit the described embodiments to the precise forms disclosed. It should be apparent to one of ordinary skill in the art that many modifications and variations are possible in view of the above teachings.

The above discussion is meant to be illustrative of the principles and various embodiments of the present invention. Once the above disclosure is fully appreciated, numerous variations and modifications will become apparent to those skilled in the art. It is intended that the following claims be interpreted to embrace all such variations and modifications. 

What is claimed is:
 1. A system for rehabilitation, comprising: a monitoring device comprising a memory device storing instructions and a network interface card, wherein the monitoring device is configured to detect information from a body part of a user; and one or more processing devices operatively coupled to the monitoring device, wherein the one or more processing devices are configured to execute the instructions to: receive configuration information specified in a treatment plan for rehabilitating the body part of the user; receive the information from the monitoring device; and transmit the configuration information and the information to a computing device controlling an electromechanical device, via the network interface card.
 2. The system of claim 1, wherein the electromechanical device further comprises: one or more pedals rotatably coupled to one or more radially-adjustable couplings; an electric motor coupled to the one or more pedals via the one or more radially-adjustable couplings; and a control system comprising one or more processing devices operatively coupled to the electric motor, wherein the one or more processing devices are configured to: responsive to a first trigger condition occurring, independently drive the one or more radially-adjustable couplings to control the electric motor to operate in a passive mode; responsive to a second trigger condition occurring: measure revolutions per time period of the one or more radially-adjustable couplings; and when the measured revolutions per time period satisfy a threshold condition, cause the electric motor to drive the one or more radially-adjustable couplings to operate the electric motor in an active-assisted mode; and responsive to a third trigger condition occurring, to control the electric motor to operate in a resistive mode, provide resistance to rotation of the one or more radially-adjustable couplings.
 3. The system of claim 2, wherein during an exercise session, the information includes an angle of a range of motion of the body part, detected by the monitoring device; wherein the threshold condition comprises a predetermined angle of the range of motion of the body part; and responsive to determining a difference between the angle and the predetermined angle, the one or more processing devices are configured to increase or decrease the angle.
 4. The system of claim 2, wherein, during an exercise session based on the treatment plan for the user operating the electromechanical device, the electric motor operates for respective periods of time in each of the passive mode, the active-assisted mode, and the resistive mode.
 5. The system of claim 2, wherein the first trigger condition, the second trigger condition, and the third trigger condition are set based on the treatment plan, wherein the treatment plan is generated based on input related to at least one of a procedure the user underwent or an attribute of the user by one or more machine learning models trained to output the treatment plan.
 6. The system of claim 2, wherein, while operating in the passive mode, the one or more processing devices are configured to control the electric motor to independently drive the one or more radially-adjustable couplings at a controlled speed specified in the treatment plan for the user operating the electromechanical device.
 7. The system of claim 2, wherein the one or more processing devices are further configured to: receive, from the monitoring device, a value of a vital sign of the user as the user operates the electromechanical device; and responsive to determining that the value exceeds a target value of the vital sign, to rotate the one or more radially-adjustable couplings, control the electric motor to reduce the resistance provided.
 8. The system of claim 1, wherein, to cause the second computing device to present the information on a user interface of a clinical portal, the one or more processing devices are further configured to transmit, via the network interface card, the information to a second computing device.
 9. The system of claim 1, wherein the transmitting the information to the computing device causes the computing device to present a range of motion of the body part in a graphical animation of the body part moving in real-time.
 10. The system of claim 1, wherein the one or more processing devices are further configured to: present, on a user interface, a graphical animation of the body part as the user operates the electromechanical device, wherein the graphical animation includes a plurality of measurements; store a lowest value or a highest value of the plurality of measurements as a statistic for an exercise session, wherein a plurality of statistics is stored for a plurality of exercise sessions specified by the treatment plan; and present progress via a graphical element presenting the plurality of statistics on the user interface of the plurality of exercise sessions throughout the treatment plan.
 11. The system of claim 1, wherein the one or more processing devices are further configured to: receive, from the monitoring device, a number of steps taken by the user over a certain time period; determine if the number of steps satisfies a step threshold of the treatment plan for the user; and present, on a user interface, the number of steps taken by the user and an indication of whether the number of steps satisfies the step threshold.
 12. The system of claim 1, wherein the one or more processing devices are further configured to: receive, from one or more force sensors operatively coupled to one or more pedals of the electromechanical device, one or more measurements of force exerted by the user during an exercise session on the one or more pedals; based on the one or more measurements of force, determine whether the user has disengaged from the electromechanical device; and responsive to determining that the user has disengaged from the electromechanical device, lock an electric motor to stop the one or more pedals from moving.
 13. The system of claim 1, wherein the one or more processing devices are further configured to: receive, from one or more force sensors operatively coupled to one or more pedals of the electromechanical device, one or more measurements of force exerted by the user on the one or more pedals during an exercise session; and present, on a separate respective graphical element of a user interface, while the user engages the one or more pedals during the exercise session, the respective one or more measurements of force on each of the one or more pedals.
 14. The system of claim 13, wherein the one or more processing devices are further configured to present a first notification on the user interface when the one or more measurements of force satisfy a pressure threshold and present a second notification on the user interface when the one or more measurements do not satisfy the pressure threshold.
 15. The system of claim 13, wherein the one or more processing devices are further configured to provide an indicator to the user based on the one or more measurements of force, wherein the indicator comprises at least one of (1) providing haptic feedback in the one or more pedals, one or more handles, or a seat, (2) providing visual feedback on the user interface, (3) providing audio feedback via an audio subsystem of the electromechanical device, and (4) illuminating a warning light on the electromechanical device.
 16. The system of claim 1, wherein the configuration information is received from a server that received the configuration information presented on the computing device from a clinical portal.
 17. The system of claim 1, wherein the monitoring device is a goniometer coupled to the user, a wristband coupled to the user, or a force sensor coupled to a pedal of the electromechanical device.
 18. A system for rehabilitation, comprising: a monitoring device comprising a memory device storing instructions and a network interface card, wherein the monitoring device is configured to detect information from a body part of a user; and one or more processing devices operatively coupled to the monitoring device, wherein the one or more processing devices are configured to execute the instructions to: receive configuration information specified in a treatment plan for rehabilitating the body part; receive the information from the monitoring device; and transmit, via the network interface card, the configuration information and the information to a computing device controlling an electromechanical device, wherein the transmitting the information to the computing device causes the computing device to present the information in a graphical animation of the body part moving in real-time.
 19. The system of claim 18, wherein the information comprises at least one of an angle of extension of the body part and an angle of bend of the body part; and wherein the information is received while the user is engaging one or more pedals of the electromechanical device.
 20. The system of claim 18, wherein, based on any of the information satisfying a threshold condition, the transmitting the information to the computing device causes the computing device to adjust a position of a pedal coupled to a radially-adjustable coupling of the electromechanical device.
 21. A system for rehabilitation, comprising: a monitoring device comprising a memory device storing instructions and a network interface card, wherein the monitoring device is configured to detect a range of motion of a body part of a user; an electromechanical device comprising one or more pedals coupled to one or more radially-adjustable couplings; an electric motor coupled to the one or more pedals via the one or more radially-adjustable couplings; and a control system comprising one or more processing devices operatively coupled to both the monitoring device and the electric motor, wherein the one or more processing devices are configured to: receive configuration information for an exercise session; based on the configuration information for the exercise session, set a resistance parameter and a maximum pedal force parameter; receive the range of motion from the monitoring device; transmit, via the network interface card, the configuration information and the range of motion to a computing device controlling the electromechanical device; and measure force applied to pedals of the electromechanical device as a user pedals the electromechanical device, wherein, based on the resistance parameter, the electric motor provides resistance during the exercise session.
 22. The system of claim 21, wherein the one or more processing devices are further configured to: determine whether the measured force exceeds the maximum pedal force parameter; and responsive to determining that the measured force exceeds the maximum pedal force parameter, reduce the resistance parameter so the electric motor applies less resistance during the exercise session to maintain a revolutions per time period threshold.
 23. The system of claim 21, wherein the one or more processing devices are further configured to: determine whether the measured force is less than the maximum pedal force parameter; and responsive to determining that the measured force is less than the maximum pedal force parameter, increase the resistance parameter so the electric motor applies greater resistance during the exercise session to maintain a revolutions per time period threshold. 